Skip to content

Ack a post-review delta from a summary (pr-flow 1.9.0, ws 1.29.0) - #92

Merged
gering merged 1 commit into
mainfrom
task/summarize-merge-delta-ack
Oct 31, 2026
Merged

gering merged 1 commit into
mainfrom
task/summarize-merge-delta-ack

Conversation

@gering

@gering gering commented Oct 26, 2026

Copy link
Copy Markdown
Owner

Why

On #91 /merge step 6b printed a ~278-line diff-of-diffs and asked "[a]cknowledge — I have read this delta". Nobody reads that; the ack recorded something that did not happen (follow-up F9).

What

  • /merge step 6b and /land: the model reads the full delta itself and shows a plain-language summary, one line per file: kind of change (version renumbering, from main, agreed review fix, new code, unclear), size, and whether it touches code the review saw. The raw diff is shown only on [d].
  • Prompt: [a]cknowledge — merge this change without a re-review / [d]iff — show the raw delta / [r]e-review — stop; run a review round instead / [s]top.
  • Honesty rules: no "only X" unless every file line is X; "from main" only at lane=0; "agreed fix" only with includes_agreed_fixes=yes and only for hunks the text shows to be one.
  • mandate.sh delta prints delta_files= + delta_file=<new|gone|changed> lane= context= versions_only= path= above delta_begin, computed per file from the two raw lane diffs. A diff-of-diffs hunk often has its file header outside its context, so the counts don't depend on reading hunks. Header/body lines are tagged while splitting, so a lane line -- x is never taken for a file header, and a mode change counts as lane content.
  • Unchanged: acknowledged --ack-id (the list sits outside the hashed text), the diff-changed refusal, user-only answers, and the approximate/binary/unreadable/truncated refusals.

Tests

  • test_mandate.py: the file list, versions-only, context-only (main moved the lines around a lane hunk), new file, header-lookalike line, mode change.
  • test_land.py: prose assertions for the four options, the ack wording (no "I have read"), summary rules, refusals.
  • Known red outside this PR: main's Structure Checks already fail on the Ubuntu runner (test_close_request.py/test_landing.py symlink FileExistsError on /bin vs /usr/bin). Locally, swarm/test_codex_models.py times out under load, on main too.

🤖 Generated with Claude Code

https://claude.ai/code/session_013pcrPYhUMWQ1gkrrqtSmic

@gering
gering force-pushed the task/summarize-merge-delta-ack branch 3 times, most recently from cf4404e to 1776842 Compare October 26, 2026 16:12
@gering
gering force-pushed the task/summarize-merge-delta-ack branch 2 times, most recently from cdbc126 to bebb789 Compare October 28, 2026 22:57
- /merge step 6b and /land read the full delta and show a plain-language
  per-file summary (kind, size, reviewed-logic impact) instead of the diff
- Prompt: [a]cknowledge (merge without a re-review) / [d]iff / [r]e-review /
  [s]top; the ack no longer claims the user read the diff
- mandate.sh delta prints delta_file= lines (lane vs. context lines,
  versions_only) above delta_begin, outside the acked text; ack_id and all
  refusals are unchanged
- Tests for the file list and prose assertions for the four options

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013pcrPYhUMWQ1gkrrqtSmic
@gering
gering force-pushed the task/summarize-merge-delta-ack branch from bebb789 to e579e92 Compare October 30, 2026 14:38
@gering
gering merged commit 9971b6e into main Oct 31, 2026
2 checks passed
@gering
gering deleted the task/summarize-merge-delta-ack branch October 31, 2026 10:25
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