Skip to content

P2: Show before-and-after image changes in Git review #1192

Closed

Description

@currentbits

Outcome: review an agent's changed screenshot, icon or image asset without accepting an opaque binary change.

Evidence: Orca viewers documents side-by-side image diffs. Solenta's src/components/ThreadView.tsx:3820 renders textual patches or a no-textual-diff state; there is no image comparison in ChangesPanel. Inspected at commit 9fc8645a2472e493a94c2e4c4c8a942974bff305.

Smallest scope: side-by-side old/new images for supported raster formats, with clear revision labels, dimensions, file sizes, zoom and checkerboard transparency. Use the exact comparison refs underlying the selected Git diff, not a guessed HEAD. Preserve existing staging and revert behavior. An overlay slider or perceptual scoring can wait.

Acceptance:

  • Handle added, deleted, modified and renamed images; show the missing side clearly.
  • Old bytes come from the selected Git ref/index and new bytes from the actual target side, including uncommitted edits.
  • Thread/worktree switches cancel stale reads; filenames never become shell fragments.
  • Bound decoded dimensions and transfer sizes; a large or unsupported file gets a useful fallback.
  • SVG is either safely rasterized without scripts/network access or deferred.
  • Viewing never edits files or the index. Staging still stages the selected file.
  • Test deterministic fixture images and verify a real packaged comparison.

Dedup: no matching image-diff issue found in current repository searches. #39 is generated-image display and #460 is screenshot markup; neither provides Git before/after review.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions