Skip to content

feat(merge_requests): expose original commit private review - #643

Merged
sjungwon03 merged 1 commit into
devfrom
feat/642-original-review-ui
Oct 11, 2026
Merged

sjungwon03 merged 1 commit into
devfrom
feat/642-original-review-ui

Conversation

@sjungwon03

Copy link
Copy Markdown
Member

Summary

MR detail now opens its commit list and a selected commit's original diff through identifier-only routes. Account-bound controllers establish authoritative global MR identity and traverse every advertised membership page. The shared diff renderer retains validated original row objects for single-line/range selection. The private-note dialog calls the guarded original-commit save command and existing uncertain-write inspection; unsupported references and unavailable files remain explicit read-only states. Commit values, including invalid parameters, are hidden from route analytics.

Closes #642

Validation

  • dart format .: 980 Dart files, zero changes on the final pass.
  • flutter analyze: no issues.
  • All five package suites: 8,015 tests (app 4,529; design 135; API 3,142; models 204; storage 5).
  • TDD: renderer/controller/empty-screen contracts fail before implementation; commit-route privacy regression reproduced before the fix. Final coverage adds 58 app cases and eight renderer cases.
  • Generated localization delegates committed with five new messages in all five locales. No model or dependency changes.
  • Five locales × narrow/tablet/wide widths × both themes; single-line/range private save, resize preservation, large text/keyboard, unavailable diffs, read-only retry, account replacement, changed selection and uncertain-write inspection.
  • Real-adapter membership traversal through advertised and empty pages, immutable results and obsolete repository/account isolation.

Screenshots

Eight synthetic selection/compose captures at 390/1200 widths in both themes were generated and visually checked in this task's local audit artifacts. Captures use dummy resource data and bundled fonts; they are not live-instance/device evidence.

Checklist

  • Targets dev; linked issue; Conventional Commit and DCO sign-off.
  • English source, translated ARB messages and updated parity/behavior documentation.
  • Shared width-based UI; existing public/MR-wide review remains compatible.
  • No dependency, persistence, public fallback, automatic replay or automatic publication.

Notes for reviewers

Original inline selection supports only one explicitly reported canonical parent. Root, unknown-parent and multiple-parent diffs stay readable but unselectable. Omitted/malformed/ambiguous files are shown as unavailable and never reparsed permissively for review. Saving still rechecks original context and parent availability, and waits for uncertain writes to settle before complete read-only inspection. Sequential preflight is not atomic server authorization; live GitLab role/version validation remains separate.

Keep original row identity through rendering and identifier-only navigation, connect guarded private saves and inspection to the UI, and hide commit route values from analytics.

Signed-off-by: sjungwon03 <sjungwon03@gmail.com>
@sjungwon03
sjungwon03 marked this pull request as ready for review October 11, 2026 06:44
@github-actions github-actions Bot added area:ui Screens and feature UI area:design-system packages/design_system area:docs AGENTS.md, .agents/, README and friends feat New feature labels Oct 11, 2026

@sjungwon03-ai sjungwon03-ai left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed commit cd6ef4a: All 24 remote PR blobs match the reviewed local commit. Identifier-only MR commit/original routes establish positive global/IID/reported-target identity through an account-bound captured repository and immutable complete membership traversal. The shared hunk renderer preserves captured row identities, existing viewer compatibility, highlights and selection eligibility. Original single-line/range UI calls only the guarded private command and existing settled read-only inspection. Unsupported parents and omitted/malformed/ambiguous files remain honest read-only states. Account/repository/origin changes discard obsolete data and private input. Commit route values, including invalid parameters, are replaced before analytics. All five locales, three widths, both themes, resize, large text/keyboard and uncertain-save recovery are covered. Eight synthetic selection/compose captures were visually checked; final format/analyze and all 8,015 local tests pass, including 66 new cases. No blocking findings. Single canonical parent only; live role/version validation remains separate and preflight is not atomic authorization.

@sjungwon03
sjungwon03 merged commit 14a1a1e into dev Oct 11, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:design-system packages/design_system area:docs AGENTS.md, .agents/, README and friends area:ui Screens and feature UI feat New feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Expose original-commit private review in MR screens

2 participants