The unified diff already shipped, but HistoryView passed the `diff` prop only
when the route targeted a single file. A reviewer who opened the project-wide
feed first — the natural entry point for "what did this agent run change?" —
found only Open this version / Download and concluded the product had no diff
at all.
Pass it unconditionally. `prevBlob` was already a per-path lookup over the
whole loaded window, so a mixed-path feed diffs each row against its own
predecessor with no new lookup; `run.idx[k]` does the same for rows inside a
run card. The existing gates are untouched: deletes never diff, a row with no
earlier version in the window says so, binary/too-large keep their
download-both message, and nothing fetches until a row is expanded.
The folder listing's "Recent changes" teaser stays diff-free on purpose: it
fetches n=20 with no Load more, so nearly every row would read "First version".
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>