feat: run comparison - structured diff view - #2601
Merged
Merged
Conversation
🎩 PreviewA preview build has been created at: |
This was referenced Jul 30, 2026
Collaborator
Author
This was referenced Jul 30, 2026
camielvs
force-pushed
the
cmp-06-structured-diff-view
branch
from
July 30, 2026 23:22
90b3472 to
f58787e
Compare
camielvs
force-pushed
the
cmp-05-run-metadata-comparison
branch
2 times, most recently
from
July 31, 2026 00:24
38d1bf5 to
d0ef921
Compare
camielvs
force-pushed
the
cmp-06-structured-diff-view
branch
from
July 31, 2026 00:24
f58787e to
6d8d1a9
Compare
camielvs
force-pushed
the
cmp-05-run-metadata-comparison
branch
from
July 31, 2026 01:05
d0ef921 to
dc53d9d
Compare
camielvs
force-pushed
the
cmp-06-structured-diff-view
branch
from
July 31, 2026 01:05
6d8d1a9 to
15d5b88
Compare
camielvs
force-pushed
the
cmp-05-run-metadata-comparison
branch
from
July 31, 2026 01:36
dc53d9d to
1e12a5d
Compare
camielvs
force-pushed
the
cmp-06-structured-diff-view
branch
from
July 31, 2026 01:36
15d5b88 to
16384ae
Compare
4 tasks
camielvs
force-pushed
the
cmp-05-run-metadata-comparison
branch
from
August 14, 2026 18:17
1e12a5d to
9ef9026
Compare
camielvs
force-pushed
the
cmp-06-structured-diff-view
branch
from
August 14, 2026 18:17
16384ae to
0bbd00e
Compare
camielvs
force-pushed
the
cmp-05-run-metadata-comparison
branch
from
August 14, 2026 19:07
9ef9026 to
d5b078f
Compare
camielvs
force-pushed
the
cmp-06-structured-diff-view
branch
2 times, most recently
from
August 14, 2026 21:01
1c31e0a to
63ee9b6
Compare
camielvs
force-pushed
the
cmp-05-run-metadata-comparison
branch
from
August 14, 2026 21:01
d5b078f to
c24848f
Compare
3 tasks
camielvs
force-pushed
the
cmp-06-structured-diff-view
branch
from
August 14, 2026 23:47
63ee9b6 to
e57e483
Compare
camielvs
force-pushed
the
cmp-05-run-metadata-comparison
branch
from
August 14, 2026 23:47
c24848f to
e998ef1
Compare
camielvs
commented
Aug 17, 2026
camielvs
commented
Aug 17, 2026
camielvs
force-pushed
the
cmp-05-run-metadata-comparison
branch
from
August 17, 2026 20:01
e998ef1 to
921fd30
Compare
camielvs
force-pushed
the
cmp-06-structured-diff-view
branch
from
August 17, 2026 23:03
53c193a to
3886fe5
Compare
8 tasks
camielvs
force-pushed
the
cmp-05-run-metadata-comparison
branch
from
August 18, 2026 00:44
0f02d18 to
6980587
Compare
camielvs
force-pushed
the
cmp-06-structured-diff-view
branch
from
August 18, 2026 00:44
3886fe5 to
6294327
Compare
camielvs
force-pushed
the
cmp-05-run-metadata-comparison
branch
from
August 18, 2026 00:56
6980587 to
fbe96eb
Compare
camielvs
force-pushed
the
cmp-06-structured-diff-view
branch
from
August 18, 2026 00:56
6294327 to
de2ad56
Compare
camielvs
marked this pull request as ready for review
August 18, 2026 01:20
Mbeaulne
reviewed
Aug 18, 2026
Mbeaulne
reviewed
Aug 18, 2026
camielvs
force-pushed
the
cmp-05-run-metadata-comparison
branch
from
August 18, 2026 21:00
fbe96eb to
dc50db3
Compare
camielvs
force-pushed
the
cmp-06-structured-diff-view
branch
2 times, most recently
from
August 18, 2026 21:59
3164dfe to
863eced
Compare
camielvs
force-pushed
the
cmp-05-run-metadata-comparison
branch
2 times, most recently
from
August 18, 2026 23:07
32ce641 to
f21b148
Compare
camielvs
force-pushed
the
cmp-06-structured-diff-view
branch
from
August 18, 2026 23:07
863eced to
9a83b68
Compare
Mbeaulne
reviewed
Aug 19, 2026
Mbeaulne
approved these changes
Aug 19, 2026
camielvs
force-pushed
the
cmp-06-structured-diff-view
branch
from
August 19, 2026 20:50
9a83b68 to
8accd4a
Compare
camielvs
force-pushed
the
cmp-05-run-metadata-comparison
branch
from
August 19, 2026 20:50
f21b148 to
360348a
Compare
Collaborator
Author
camielvs
changed the base branch from
cmp-05-run-metadata-comparison
to
graphite-base/2601
August 19, 2026 21:17
camielvs
added a commit
that referenced
this pull request
Aug 19, 2026
## Description Fifth PR in the **Compare Runs** stack. Adds run-level metadata comparison — the context around the two runs, as opposed to their pipeline structure. It compares who created each run, when, and any run-level annotations and arguments, and surfaces what changed. Two things are deliberately handled specially: - **Created-at** is shown for context but never counts as a "change" on its own — two different runs always have different timestamps. - Superficial keys (notes, tags) and layout-only editor annotations are ignored so they don't create noise. Annotation and argument keys are treated generically, so whatever a given deployment stores shows up without needing hardcoded knowledge of the keys. Rendered as a compact summary bar that expands to show the details when something actually differs. ## Related Issue and Pull requests <!-- Link to any related issues using the format #<issue-number> --> Part of the Compare Runs stack. Builds on #2599; the next PR (#2601) builds on this branch. ## Type of Change - [x] New feature ## Checklist <!-- Please ensure the following are completed before submitting the PR --> - [ ] I have tested this does not break current pipelines / runs functionality - [ ] I have tested the changes on staging ## Screenshots (if applicable) <!-- Add screenshots of the collapsed summary bar and the expanded metadata diff. --> ## Test Instructions - Run the unit tests: `npm run test -- compareRunMetadata` - Covers author changes, the created-at exception, generic annotation/argument diffing, and exclusion of superficial/frontend-only keys. - End-to-end (via the top of the stack, #2603, with the **Compare runs** flag on): - Compare two runs by different authors and confirm the metadata bar flags the author change and expands to show details. - Confirm two runs by the same author with only different timestamps are reported as unchanged. ## Additional Comments <!-- Add any additional context or information that reviewers might need to know regarding this PR -->
camielvs
force-pushed
the
cmp-06-structured-diff-view
branch
from
August 19, 2026 21:24
8accd4a to
47ea33c
Compare
camielvs
added a commit
that referenced
this pull request
Aug 19, 2026
## Description Seventh PR in the **Compare Runs** stack. Adds the **Graph** view — a visual, side-by-side-in-one-canvas take on the comparison. It renders the merged graph (from #2597) with colour-coded nodes and edges: green for added, red for removed, amber for changed, grey for unchanged, plus a legend. Nodes show each task's status, digest and a short change summary; clicking one opens a detail popover reusing the same task/IO diff detail from the Structured view. A **Highlight A / B / Both** control dims everything not present in the chosen run and switches nodes to show that run's actual values. Also refactors the run view's status indicator to extract a reusable `StatusTab` so the merged task nodes can show per-run (A/B) status tabs. ## Related Issue and Pull requests <!-- Link to any related issues using the format #<issue-number> --> Part of the Compare Runs stack. Builds on #2601; the final PR (#2603) builds on this branch. ## Type of Change - [x] New feature - [x] Cleanup/Refactor ## Checklist <!-- Please ensure the following are completed before submitting the PR --> - [ ] I have tested this does not break current pipelines / runs functionality - [ ] I have tested the changes on staging ## Screenshots (if applicable) <!-- Add screenshots of the graph tab: the merged graph with legend, a node detail popover, and the A/B highlight modes. --> ## Test Instructions Reachable once the stack is wired up (#2603). - Check out the top of the stack, enable the **Compare runs** beta flag, and compare two runs. - On the **Graph** tab, confirm: - The merged graph lays out and node/edge colours match the legend (added / removed / changed / unchanged). - Clicking a node opens its detail popover; clicking the background closes it. - **Highlight A / B / Both** dims the other run and shows the highlighted run's values. - Regression check the refactor: open a normal run's graph and confirm task status indicators (including the cache-disabled state) still render as before. ## Additional Comments <!-- Add any additional context or information that reviewers might need to know regarding this PR -->
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Description
Sixth PR in the Compare Runs stack. Adds the Structured view — the main list-based way of reading a comparison.
It shows a summary line (how many tasks were added / removed / changed / unchanged, plus how many had a different outcome) and a Show unchanged toggle to hide the noise. Below that, inputs, tasks and outputs are listed in sections, each row showing exactly what changed:
Related Issue and Pull requests
Part of the Compare Runs stack. Builds on #2600; the next PR (#2602) builds on this branch.
Type of Change
Checklist
Screenshots (if applicable)
Test Instructions
Reachable once the stack is wired up (#2603).
Additional Comments