Skip to content

refactor(ui): finalize diff row facade - #880

Merged
benvinegar merged 1 commit into
refactor/render-row-mounted-viewsfrom
refactor/diff-row-view-facade
Aug 27, 2026
Merged

refactor(ui): finalize diff row facade#880
benvinegar merged 1 commit into
refactor/render-row-mounted-viewsfrom
refactor/diff-row-view-facade

Conversation

@benvinegar

@benvinegar benvinegar commented Aug 27, 2026

Copy link
Copy Markdown
Member

Summary

  • rename the remaining facade to DiffRowView.tsx
  • extract cursor identity and matching into cursorHighlight.ts
  • migrate every consumer to focused modules instead of retaining a compatibility barrel
  • update architecture documentation for the final row-rendering boundaries

Stack

Validation

  • full unit suite with an isolated temporary directory
  • 94 focused UI/OpenTUI tests
  • 132 PTY integration tests and TTY smoke
  • tmux rendering validation
  • 106 review-conformance tests
  • 11 source-boundary tests
  • bun run typecheck
  • bun run lint
  • bun run deps:check
  • bun run build:npm
  • bun run check:pack
  • independent review: PASS

This PR description was generated by Pi using gpt-5.6-sol

@vercel

vercel Bot commented Aug 27, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
hunk-web Ignored Ignored Preview Aug 27, 2026 3:05am

Request Review

@greptile-apps

greptile-apps Bot commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

The PR finalizes the diff-row rendering facade without changing its rendering behavior.

  • Renames renderRows.tsx to the focused DiffRowView.tsx facade and migrates its consumers.
  • Extracts cursor identity and matching into cursorHighlight.ts with colocated tests.
  • Updates architecture documentation to reflect the resulting row-rendering boundaries.

Confidence Score: 5/5

The PR appears safe to merge, with no concrete behavioral, build, or public-contract regressions identified.

The refactor preserves cursor matching and row-dispatch behavior, migrates all repository consumers, introduces no runtime import cycle, and keeps renamed UI internals outside published export boundaries.

Important Files Changed

Filename Overview
src/ui/diff/DiffRowView.tsx Renames and narrows the memoized row-dispatch facade while preserving its raw-row adaptation and rendering behavior.
src/ui/diff/cursorHighlight.ts Extracts the unchanged cursor-highlight type and stable-key matching logic into a focused leaf module.
src/ui/diff/CodeRowView.tsx Replaces a structurally duplicate local cursor type with the shared extracted type.
src/ui/diff/DiffSectionBody.tsx Migrates facade and cursor-helper imports to their focused modules without changing row rendering.
src/ui/components/panes/FileView.tsx Migrates cursor matching to the focused module while preserving extension file-view behavior.
src/opentui/HunkDiffBody.tsx Updates the internal facade import; the renamed component does not leak through the public OpenTUI type boundary.

Reviews (1): Last reviewed commit: "refactor(ui): finalize diff row facade" | Re-trigger Greptile

@benvinegar
benvinegar merged commit 9150ac2 into refactor/render-row-mounted-views Aug 27, 2026
13 checks passed
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