fix(ship): preserve every coding child ending - #2158
Conversation
There was a problem hiding this comment.
Changes requested: The main salvage path is improved, but work created by the final description turn can still be discarded.
Warning
Changes requested · head fefde58 · 1 finding: 1 minor
| Severity | Finding | Where |
|---|---|---|
| minor | F1 Final description-turn work bypasses the new completion salvage | src/core/dispatch/runLoop.ts:1592 |
Full review
F1 — The completion checkpoint runs before the optional description follow-up, but that follow-up still exposes bash, and the code explicitly anticipates it may push. If it leaves a dirty tree or unpushed commit, the subsequent observation reaches work_left_behind without another preservation attempt, so release can still discard the work. Run completion preservation after the final model turn, or repeat it after this observation before ending the harness.
fefde58 to
cacda92
Compare
There was a problem hiding this comment.
LGTM: The final description-turn salvage gap is fixed, and no findings remain.
Note
Approved · head cacda92 · no findings
Full review
F1 is resolved: final description-turn work is now salvaged before release, with regression coverage. The test-title changes are refactors with verification intact.
Co-Authored-By: coreplane-switchboard[bot] <318072483+coreplane-switchboard[bot]@users.noreply.github.com>
cacda92 to
3a32ebb
Compare
There was a problem hiding this comment.
LGTM: The regenerated vocabulary baseline resolves the failed consistency check, and no unresolved finding remains.
Note
Approved · head 3a32ebb · no findings
Full review
The vocabulary baseline now matches the retired contract term, resolving both prior CI findings; no new findings.
Coding children now resolve pre-push conflicts under one bounded rule and checkpoint dirty or unpushed work after their actual final model turn. Workspace release can no longer discard work created during the description follow-up.
Why: Issue #2153 exposed a contradiction with record 0071: conflict handling had rival instructions, while work created after the earlier salvage boundary could still be lost.
Where to look
Feedback wanted: Please verify that clean children still reach description and PR post-steps, while dirty final-turn work becomes resumable WIP before release.
Risk: This affects runner-owned coding child endings. Misclassification could create a WIP checkpoint or skip PR creation; rollback is a revert of the completion checkpoint and parent handling.
Verified: 458 focused tests and all CI verification jobs passed at the pushed head; CodeQL analysis remains in progress.
Decisions (3)
Validation (9 criteria)
For agents
Rebased immediately before push onto origin/main at c3f1554; force-pushed head 3a32ebb as one coherent commit. Review finding F1 remains resolved by the post-description completion checkpoint and its regression. The two check findings are fixed by the generated vocabulary baseline update; skip reviewing that JSON as handwritten logic. CodeQL analysis was still in progress at final observation.
Requested by @justinhelmer in slack:C0BRRHKFLCB
🤖 Generated with Claude Code