Skip to content

feat(review): add Git change review tabs - #79

Open
JairEsk wants to merge 11 commits into
mainfrom
jair/code-review-pane-diffs-findings
Open

feat(review): add Git change review tabs#79
JairEsk wants to merge 11 commits into
mainfrom
jair/code-review-pane-diffs-findings

Conversation

@JairEsk

@JairEsk JairEsk commented Aug 28, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • add a Changes chip that opens a dedicated Git review tab in the browser window
  • support unstaged, staged, branch, and commit scopes with lazy per-file diffs
  • add stage, unstage, and confirmed revert actions, including rename and unborn-repository handling
  • support multi-repo sessions across file lists, commits, and bulk operations
  • centralize shared review types and polling/layout constants, with no inline SVG assets
  • normalize CRLF diffs and safely skip binary, oversized, and escaping paths

Testing

  • npm run build
  • npm run smoke
  • npm run smoke:review (49 checks)
  • Prettier and git diff --check

- Purged Review tab types and methods from api.ts and preload/index.ts.

- Restrained Review IPCs to only be callable by the main window for security.

- Fixed Git path traversal vulnerability in stageFiles and unstageFiles.

- Removed Review UI implementations and states from BrowserChrome.tsx.

- Cleaned up typecheck errors across web and node.
Long lines now scroll sideways instead of wrapping, and the scrollbar is actually visible: the diff renders in a shadow root, so main.css never reached it and the library's own handle stayed transparent until hover. Restyle it there with the same tokens.

Also aligns the pane header below the window controls, extracts the resize bounds to constants, matches the close button to LoopDetailsPane, and removes patch scripts committed by mistake.
The review-tab block in smoke.ts calls browser.newReviewTab(), which was removed in 6ab2e7a when Review moved out of the browser window and into the chat pane, so it failed on all three OSes with '(void 0) is not a function'.

Five files touched by this branch were never run through prettier, failing format:check.
… constants

runCodeReview inlined 50000 at its call site while tools.ts keeps every other output cap together at the top; the commit-picker clamp was spelled out twice in main plus a bare 30 in the renderer; and the scope union was re-typed by hand next to an existing GitReviewScope.
@FreddyJD
FreddyJD marked this pull request as draft August 29, 2026 18:15
…-diffs-findings

# Conflicts:
#	package.json
#	src/renderer/src/browser/BrowserChrome.tsx
#	src/renderer/src/browser/main.tsx
@JairEsk
JairEsk marked this pull request as ready for review August 30, 2026 16:11
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.

1 participant