Skip to content

fix(coding-agent): preserve compaction preflight ownership#341

Draft
minpeter wants to merge 2 commits into
code-yeongyu:mainfrom
minpeter:fix/compaction-preflight-ownership-current-main
Draft

fix(coding-agent): preserve compaction preflight ownership#341
minpeter wants to merge 2 commits into
code-yeongyu:mainfrom
minpeter:fix/compaction-preflight-ownership-current-main

Conversation

@minpeter

@minpeter minpeter commented Jul 25, 2026

Copy link
Copy Markdown
Contributor

Summary

Fixes the current-main compaction lifecycle ownership regression: a synchronous listener can supersede the controller during compaction_start, and stale preflight terminals must not emit afterward.

Verification

  • focused lifecycle: 3 passed
  • compaction domain: 51 files / 400 tests passed
  • root build and root check passed
  • real CLI QA: isolation 9/9, RPC 4/4, mock loop 38/38, smoke 7/7

Evidence directory: local-ignore/qa-evidence/20260724-compaction-contract-current-st_019f9584/


Summary by cubic

Fixes a compaction ownership regression in coding-agent so preflight auto-compaction can’t emit a stale compaction_end, and preserves overflow recovery state when a start listener aborts or supersedes preflight.

  • Bug Fixes
    • Recheck ownership after compaction_start; skip terminal if superseded; reset overflow-retry state only when the same controller still owns the run.
    • Added tests for balanced start/end with no work, no stale terminal after abort, no overflow-retry consumption on abort, and exhaustion preserved when superseded.

Written for commit 3ae7498. Summary will update on new commits.

Review in cubic

@minpeter

Copy link
Copy Markdown
Contributor Author

Delivery evidence matrix

Delivery Live status Verification / evidence
#328 compaction progress Draft; prior CI record predates lifecycle ownership repair Live xterm.js 80-column capture, local-ignore/qa-evidence/20260724-compaction-progress-live-cdp-final/
#334 eval history bound Draft; historical broad CI failure classified against pre-repair main 256 MB real CLI: 125 reads -> 100 rows / 26 omitted; 20,000 reads -> 100 rows / 19,901 omitted; evidence local-ignore/qa-evidence/20260724-eval-status-history-current-main/
#336 Inspector VM recovery Draft; historical broad CI failure classified against pre-repair main enabled recovery and disabled fatal real CLI scenarios passed; evidence local-ignore/qa-evidence/20260725-inspector-vm-import-crash-current-main/
#341 compaction ownership Draft; current delivery head 3ae7498; 5/5 checks green; lifecycle focused, compaction domain, root build/check, RPC/mock-loop/smoke QA, and five-lane review passed; evidence local-ignore/qa-evidence/20260725-compaction-preflight-listener-abort/

#340 is closed as superseded. QA processes and isolated sandboxes were cleaned; real auth remained unchanged.

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