Skip to content

feat(diff): add diff line selection and quoting#80

Merged
tyulyukov merged 1 commit intomainfrom
feature/diff-line-selection
May 1, 2026
Merged

feat(diff): add diff line selection and quoting#80
tyulyukov merged 1 commit intomainfrom
feature/diff-line-selection

Conversation

@tyulyukov
Copy link
Copy Markdown
Owner

Summary

  • Add line selection support to file diffs and inline diff previews.
  • Allow selected diff lines to be quoted, copied, or replied to with line-range context.
  • Replace selection handling in the diff reply toolbar with explicit file/range state and add a clear-selection action.
  • Add helper logic and regression tests for diff quote construction, language inference, and feature coverage.

Testing

  • Not run (PR description only).
  • New coverage added in apps/web/src/lib/diffLineQuote.test.ts.
  • Browser coverage added in apps/web/src/components/chat/InlineDiffPreview.browser.tsx.
  • Feature guard coverage updated in apps/web/src/featureGuards.test.ts.

- let users select whole diff lines in previews and the diff panel
- add reply, copy, and clear actions for selected diff ranges
- add quote-building tests and browser coverage for selection flow
@tyulyukov tyulyukov merged commit 9e2182c into main May 1, 2026
5 checks passed
tyulyukov added a commit that referenced this pull request May 1, 2026
PR #81's run hit the 10-minute cap during the post-job cache uploads
(Playwright 261MB + Turbo 328MB at ~2 MB/s on hosted runners). The
actual quality work — fmt/lint/typecheck/test/browser/build — finished
in 8m25s; the timeout fired during the second cache save, mid-stream.

Recent main pushes have been creeping toward the limit (7m24s, 7m28s,
8m0s for PR #80) so the cap was already on the edge before this PR's
extra upstream-sync work pushed it over. Bumping to 15 leaves headroom
without trading away the safety net entirely.

The release_smoke job stays at 10 — it consistently runs in ~1m and
isn't affected by the cache layer.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant