Skip to content

feat: run comparison - run metadata comparison - #2600

Merged
camielvs merged 1 commit into
masterfrom
cmp-05-run-metadata-comparison
Aug 19, 2026
Merged

feat: run comparison - run metadata comparison#2600
camielvs merged 1 commit into
masterfrom
cmp-05-run-metadata-comparison

Conversation

@camielvs

@camielvs camielvs commented Jul 30, 2026

Copy link
Copy Markdown
Collaborator

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

Part of the Compare Runs stack. Builds on #2599; the next PR (#2601) builds on this branch.

Type of Change

  • New feature

Checklist

  • I have tested this does not break current pipelines / runs functionality
  • I have tested the changes on staging

Screenshots (if applicable)

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, feat: run comparison - compare page, run selection & routing #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

@github-actions

github-actions Bot commented Jul 30, 2026

Copy link
Copy Markdown

🎩 Preview

A preview build has been created at: cmp-05-run-metadata-comparison/0e20cdb

@camielvs
camielvs force-pushed the cmp-04-artifact-comparison branch from bbd75eb to 6d71a83 Compare July 30, 2026 23:22
@camielvs
camielvs force-pushed the cmp-05-run-metadata-comparison branch 2 times, most recently from 38d1bf5 to d0ef921 Compare July 31, 2026 00:24
@camielvs
camielvs force-pushed the cmp-04-artifact-comparison branch from 6d71a83 to 1b84110 Compare July 31, 2026 00:24
@camielvs
camielvs force-pushed the cmp-05-run-metadata-comparison branch 2 times, most recently from dc53d9d to 1e12a5d Compare July 31, 2026 01:36
@camielvs
camielvs force-pushed the cmp-04-artifact-comparison branch from 1b84110 to 378e505 Compare July 31, 2026 01:36
@camielvs
camielvs force-pushed the cmp-04-artifact-comparison branch from 378e505 to a10c24a Compare August 14, 2026 18:17
@camielvs
camielvs force-pushed the cmp-05-run-metadata-comparison branch 2 times, most recently from 9ef9026 to d5b078f Compare August 14, 2026 19:07
@camielvs
camielvs force-pushed the cmp-04-artifact-comparison branch from a10c24a to 3508beb Compare August 14, 2026 19:07
@camielvs
camielvs force-pushed the cmp-05-run-metadata-comparison branch from d5b078f to c24848f Compare August 14, 2026 21:01
@camielvs
camielvs force-pushed the cmp-04-artifact-comparison branch from 3508beb to 744e5fb Compare August 14, 2026 21:01
@camielvs
camielvs force-pushed the cmp-05-run-metadata-comparison branch from c24848f to e998ef1 Compare August 14, 2026 23:47
@camielvs
camielvs force-pushed the cmp-04-artifact-comparison branch from 744e5fb to fbae585 Compare August 14, 2026 23:47
Comment thread src/routes/v2/pages/CompareView/utils/compareRunMetadata.ts Outdated
Comment thread src/routes/v2/pages/CompareView/utils/compareRunMetadata.ts Outdated
@camielvs
camielvs force-pushed the cmp-05-run-metadata-comparison branch from e998ef1 to 921fd30 Compare August 17, 2026 20:01
@camielvs
camielvs force-pushed the cmp-04-artifact-comparison branch from fbae585 to 5095ff0 Compare August 17, 2026 20:01
@camielvs
camielvs force-pushed the cmp-04-artifact-comparison branch from 5095ff0 to df8cad2 Compare August 17, 2026 23:03
@camielvs
camielvs force-pushed the cmp-05-run-metadata-comparison branch from 921fd30 to 0f02d18 Compare August 17, 2026 23:03
@camielvs
camielvs force-pushed the cmp-04-artifact-comparison branch from df8cad2 to ecc36ff Compare August 18, 2026 00:44
@camielvs
camielvs force-pushed the cmp-05-run-metadata-comparison branch 2 times, most recently from 6980587 to fbe96eb Compare August 18, 2026 00:56
@camielvs
camielvs force-pushed the cmp-04-artifact-comparison branch from ecc36ff to 556f7e8 Compare August 18, 2026 00:56
@camielvs
camielvs marked this pull request as ready for review August 18, 2026 01:20
@camielvs
camielvs requested a review from a team as a code owner August 18, 2026 01:20
@camielvs
camielvs force-pushed the cmp-05-run-metadata-comparison branch from fbe96eb to dc50db3 Compare August 18, 2026 21:00
@camielvs
camielvs force-pushed the cmp-04-artifact-comparison branch 2 times, most recently from 97bfdd5 to 76a1953 Compare August 18, 2026 21:59
@camielvs
camielvs force-pushed the cmp-05-run-metadata-comparison branch from dc50db3 to 32ce641 Compare August 18, 2026 21:59
@camielvs
camielvs force-pushed the cmp-04-artifact-comparison branch from 76a1953 to d39ca43 Compare August 18, 2026 23:07
@camielvs
camielvs force-pushed the cmp-05-run-metadata-comparison branch from 32ce641 to f21b148 Compare August 18, 2026 23:07
@camielvs
camielvs force-pushed the cmp-04-artifact-comparison branch from d39ca43 to 5adb57c Compare August 19, 2026 20:50
@camielvs
camielvs force-pushed the cmp-05-run-metadata-comparison branch from f21b148 to 360348a Compare August 19, 2026 20:50

camielvs commented Aug 19, 2026

Copy link
Copy Markdown
Collaborator Author

Merge activity

  • Aug 19, 9:01 PM UTC: A user started a stack merge that includes this pull request via Graphite.
  • Aug 19, 9:18 PM UTC: Graphite rebased this pull request as part of a merge.
  • Aug 19, 9:23 PM UTC: @camielvs merged this pull request with Graphite.

@camielvs
camielvs changed the base branch from cmp-04-artifact-comparison to graphite-base/2600 August 19, 2026 21:12
camielvs added a commit that referenced this pull request Aug 19, 2026
## Description

Fourth PR in the **Compare Runs** stack. Adds artifact comparison — the ability to see how a task's output artifacts differ between the two runs.

For each output artifact it shows whether it was added, removed, changed or unchanged. Small inline values are shown directly side by side; larger artifacts show their type and size, with a **Compare** button that opens a full-screen dialog previewing both runs' versions next to each other (reusing the existing artifact preview components). Artifacts that are too large or can't be previewed are handled gracefully.

Not wired into a page yet — the later task diff view consumes this.

## Related Issue and Pull requests

<!-- Link to any related issues using the format #<issue-number> -->

Part of the Compare Runs stack. Builds on #2598; the next PR (#2600) 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 artifact diff rows and the side-by-side comparison dialog. -->

## 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 that both produced output artifacts on the same task.
- Expand a task and confirm:
  - Artifacts show the correct Added / Removed / Changed / Unchanged status.
  - Small inline values are shown side by side for both runs.
  - Larger/previewable artifacts show a **Compare** button that opens the dialog with both runs' previews.
  - Non-previewable or oversized artifacts show a sensible message instead of erroring.

## Additional Comments

<!-- Add any additional context or information that reviewers might need to know regarding this PR -->
@camielvs
camielvs changed the base branch from graphite-base/2600 to master August 19, 2026 21:16
@camielvs
camielvs force-pushed the cmp-05-run-metadata-comparison branch from 360348a to 0e20cdb Compare August 19, 2026 21:17
@camielvs
camielvs merged commit 73d4751 into master Aug 19, 2026
15 of 17 checks passed
@camielvs
camielvs deleted the cmp-05-run-metadata-comparison branch August 19, 2026 21:23
camielvs added a commit that referenced this pull request Aug 19, 2026
## 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:

- Per-task detail: diff status, per-run execution status (with an arrow when the outcome differs), changed arguments/annotations, cache changes, and the artifact comparison from the previous PR.
- A **Compare logs** button that opens a side-by-side log diff for tasks that ran in both runs and changed.
- Input/output detail rows with the same treatment.

## Related Issue and Pull requests

<!-- Link to any related issues using the format #<issue-number> -->

Part of the Compare Runs stack. Builds on #2600; the next PR (#2602) 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 structured view: summary counts, a changed task row, and the log comparison dialog. -->

## 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 **Structured** tab, confirm:
  - The summary counts (added / removed / changed / unchanged / outcome differs) look right, and **Show unchanged** hides/shows unchanged rows.
  - Tasks, inputs and outputs are grouped into sections, with changed fields listed on each row.
  - A task with a different outcome is highlighted and shows both runs' statuses.
  - **Compare logs** opens a side-by-side log diff for a task that ran in both runs.
  - Two identical runs show a "no differences" state.

## Additional Comments

<!-- Add any additional context or information that reviewers might need to know regarding this PR -->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants