Skip to content

feat(merge_requests): submit pending reviews with summary and outcome - #621

Merged
sjungwon03 merged 1 commit into
devfrom
feat/620-submit-pending-review
Oct 5, 2026
Merged

sjungwon03 merged 1 commit into
devfrom
feat/620-submit-pending-review

Conversation

@sjungwon03

Copy link
Copy Markdown
Member

Summary

Whole pending MR review publication now offers an optional public summary and explicit reviewed/request-changes outcomes. Summary Markdown stays exact, option changes reset consent, and summary-only or outcome-only submissions work without private drafts. Current reviewer state is read separately from account status; unavailable state reads preserve ordinary notes/summary publication.

A fresh complete reviewer comparison joins the existing private-note preflight before one bulk request. Requested state is verified after publication because GitLab can apply notes, summary and reviewer state separately. Uncertain/obsolete outcomes require actual write settlement and complete private/public/reviewer inspection, including selected-note recovery entry, then new consent. Disabled outcomes are cleared on a new preview. Reviewed remains distinct from formal approval; requesting changes can revoke an existing approval and block merging.

Closes #620

Validation

  • dart format .: 947 files, zero outstanding changes
  • flutter analyze: no issues
  • 7,107 full tests: app 4,121; design system 127; API 2,670; models 184; secure storage 5
  • 111 new behavior tests; missing API/controller/UI behavior and two review findings reproduced before their fixes
  • Freezed/JSON and localization outputs generated; five translated locales retain the existing 109-message baseline
  • Three widths, both themes, 1.8 text scale with 320-pixel keyboard, twelve synthetic widget captures manually inspected

Checklist

  • Linked issue, feature branch into dev, Conventional Commit and DCO
  • Test-first behavior and updated flow/parity documentation
  • Shared responsive UI with light/dark mobile/desktop verification
  • No dependencies, disk persistence or telemetry added
  • Dummy users/credentials/notes only; repository source/docs/review in English with localized translations

Screenshots

All twelve synthetic captures

Mobile confirmation, light Desktop recovery, dark
Confirmation Recovery

Notes for reviewers

Uses documented bulk publication options and reviewer reads. The primary API can publish drafts before a later summary failure and does not check reviewer-state service results before 204. Postwrite state confirmation and shared three-part recovery handle those limits; no authentication replay, redirect, fallback or automatic retry is introduced. Reviewer wire IDs are validated before generated numeric coercion.

Public summaries explicitly send internal: false; this slice has no internal-summary control or new formal-approval/merge command. Reviewer assignment, permissions and edition capabilities remain server-authoritative. Preflight/postwrite reads are not atomic or exactly-once guarantees, recovery is in memory, and no live-instance/device validation is claimed. Private reply/commit/image/file creation remains separate; MW-07 stays in progress.

Confirm reviewer state before and after publication, and require complete inspection and renewed consent after partial or obsolete outcomes.

Signed-off-by: sjungwon03 <sjungwon03@gmail.com>
@sjungwon03
sjungwon03 marked this pull request as ready for review October 5, 2026 16:08
@github-actions github-actions Bot added area:api packages/gitlab_api — GitLab REST/GraphQL client area:ui Screens and feature UI area:docs AGENTS.md, .agents/, README and friends feat New feature labels Oct 5, 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.

Review of commit 555f9dc: No blocking findings remain in this commit. Reviewed the source diff, generated reviewer model, translations, updated test fixtures, flow documentation and all twelve synthetic captures against the official GitLab contracts.

Verified one exact public-summary/outcome bulk request with strict 204 handling, integer wire identities before generated coercion, outer review state separated from nested account status, complete reviewer pagination, fresh private/reviewer preflight comparisons and postwrite current-user outcome verification. Plain publication retains its bodyless command and unavailable reviewer reads keep notes/summary publication available. Reviewed is distinct from formal approval; request-changes effects are disclosed and existing approved state cannot be silently replaced by reviewed.

Checked the shared settlement/reservation/uncertainty flow: a state-bearing attempt requires complete private/public/reviewer inspection even through selected-note recovery, partial reads do not clear the gate, obsolete sessions discard input/results and another submission requires renewed consent. The unavailable-preflight UI selection and fractional-ID coercion findings were reproduced first and fixed before this head. Existing selected-note semantics remain covered.

Local validation: 947 formatted Dart files with zero outstanding changes, clean workspace analysis, 7,107 tests across all five packages (111 new), generated model/localization output, five locales and three widths in both themes, 1.8 text scale with keyboard constraints. CI remains a separate merge gate. Paginated preflight/postwrite observation is not atomic or exactly once, recovery is in memory, server assignment/permissions/edition behavior is authoritative, and no live-instance/device validation is claimed.

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

Labels

area:api packages/gitlab_api — GitLab REST/GraphQL client 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.

Submit pending MR reviews with a public summary and explicit reviewer outcome

2 participants