Repository navigation
fix: review follow-ups for the 2026-10-14 integration batch - #330
Merged
MendixMau merged 2 commits intoOct 14, 2026
Merged
Conversation
- exec.sh exec_lock_takeover / test-scratch.sh take_over(): re-check that our own line still heads <lock>.takeover just before the compare-and-rm; back off (return 1) if not. Closes the double-holder window after a mid-takeover crash (2 in 160 rounds in review). Fixture copy exec-lock-block.sh re-synced. - skills/dispatching.md: app-restart exits 4 and 5 named alongside 3 and 1. - tests/wave2/test-test-scratch.sh: ls | grep -q under pipefail -> here-string. - bin/sync-project.sh step 4d: || true on the grep -v pipe so empty doctor output cannot abort sync. - bin/lib/obligation-check.sh _ob_has_denominator: tr also strips NUL bytes, silencing bash's "ignored null byte" warning. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VJgWP5vEoAsNsJYqCDMGNw
…tart Review (MERGE-AFTER-FIX) found the re-check opens a new transient refusal (own fresh line restored into .takeover by a peer → every contender backs off for ~6 s) while only narrowing the original mid-takeover-crash race. Lock changes go back to integration's state and wait for a designed fix with a regression fixture. app-restart also exits 4 after stopping the recorded app, so the doc no longer says "nothing stopped". Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VJgWP5vEoAsNsJYqCDMGNw
MendixMau
marked this pull request as ready for review
October 14, 2026 02:16
MendixMau
added a commit
that referenced
this pull request
Oct 14, 2026
) Every constituent PR was reviewed by a fresh agent that did not write it (CLAUDE.md "Merging a PR"); only MERGE verdicts joined. CI green on each constituent head and on this head (40814fc); full suites run on the branch. Review lines (per merged PR): - #315 context trim — MERGE; 360/385 removed lines found verbatim in their new homes, rest read by hand; baseline 79,997 -> 76,259. - #316 independent-review + word-budget rules — MERGE-AFTER-FIX (3 rounds), fixes applied as specified. - #318 page-fidelity displayed text — MERGE after fix round + confirmation. - #317 interaction-model skill (#291 part 1) — MERGE after fix round + confirmation; no client names leaked. - #321 PROOF-OF-LOOK per section; final-look not due before derived Stage 6 — MERGE after fix round + confirmation. - #307 graph-sweep guard; per-BRD conformance ledgers — MERGE after two fix rounds + confirmation. - #325 extraction-quality section; token-burn fixes — MERGE after fix round + confirmation. - #310 e2e OQL by alias, negative-span liveness, APP-DOWN, #302 credential regression fix — MERGE after fix round + 3 confirmations. - #323 inbox promotions — MERGE after fix round + confirmation. - #308 lint gate BLIND on reverted stock rules — MERGE (FIRST-SEEN reverted) after two fix rounds + confirmation. - #328 pipefail + grep -q flake — MERGE; 0/30 flakes vs 15/100 on master. Follow-up: run-all resolves bin/lib/ subjects (reviewed, MERGE). - #319 test-stack-up command-line ownership proof — MERGE after fix round + 2 confirmations. - #327 change-intake core + on-demand detail; CRLF-safe change log — MERGE after fix round + confirmation. - #320 follow-ups to #290/#292; Dispatching split out — MERGE after fix round + confirmation. - #326 status delivery rounds (existing-app mode) — MERGE after fix round + confirmation. - #312 lint batch 4: SEC014, toolkit CONV009 — MERGE after review + 2 fix rounds + confirmation; field run on mxcli 0.26. - #324 exec.sh change classes, shared stale-lock takeover, SEC014 note echo — MERGE (joint review); follow-up owed for a takeover race after a mid-takeover crash. - #322 MxTest after-startup guard, mxcli-run pid check — MERGE (joint review). - #314 doctor property-set exit code; sync announces its bound — MERGE (joint review). - #330 review follow-ups (exit 4/5 docs, pipefail, NUL strip) — MERGE-AFTER-FIX, fixes applied; takeover re-check dropped. Field runs are still owed for most instruments in this batch (stated in each PR). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VJgWP5vEoAsNsJYqCDMGNw
4 of 5 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Direct lane
What changed and why (one paragraph):
Small fixes from the independent reviews of the PRs in
integration/2026-10-14. Nothing else is in this PR.skills/dispatching.mdnames app-restart exits 4 and 5 next to 3 and 1. Exit 4 is a port held by a process it did not record: nothing is started, and the recorded app may already be stopped. Exit 5 is a live MxTest after-startup that the stop left in place.tests/wave2/test-test-scratch.shreplacesls | grep -qunder pipefail with here-strings, the same SIGPIPE false negative fix(routing): pipefail + grep -q false negatives (CI flake) #328 fixed.bin/sync-project.shstep 4d no longer aborts when doctor prints nothing._ob_has_denominatorinbin/lib/obligation-check.shstrips NUL bytes, so bash stops warning.Dropped after review: the stale-lock takeover re-check in exec.sh and test-scratch.sh. The independent review (MERGE-AFTER-FIX) found that it opens a new short refusal of about 6 s: a peer can put the caller's own fresh line back into
.takeover, and then every contender backs off. It only narrows the original mid-takeover-crash race (2 of 160 rounds). The lock code is back to integration's state and waits for a designed fix with a regression fixture.Field evidence: none yet.
render-routing --checkpasses, baseline 74,995 of 80,000 words (+36).CHANGELOG.mdline appended, credited🤖 Generated with Claude Code
https://claude.ai/code/session_01VJgWP5vEoAsNsJYqCDMGNw