Skip to content

fix: cleanup-owning run with unknown capture no longer strands its task (#16037) - #16043

Merged
atomantic merged 1 commit into
mainfrom
claim/issue-16037
Nov 14, 2026
Merged

atomantic merged 1 commit into
mainfrom
claim/issue-16037

Conversation

@atomantic

Copy link
Copy Markdown
Owner

Summary

A completed run that owns its task's cleanup (cleanupPending) but whose terminal checkout capture failed was settled by the own-seed absence path as soon as its checkout disappeared, leaving the task in_progress and cleanup-held with no owner able to settle it.

  • recordAbsentCheckoutRetirement now refuses to settle a cleanupPending run until its task completed or names another cleanup owner (the same task-moved-on check handed-off captured checkouts already use).
  • verifyAgentRepoState no longer returns checkout-capture-pending for a cleanup-owning run whose seed checkout, branch and worktree entry are verifiably absent; it falls through to the existing absent-checkout path, which proves a merged PR without a captured head or stays a visible absent-checkout-integration-unverified hold.
  • Runs that do not own cleanup settle exactly as before.

Tests

Writer test (owner / unowned task refused, completed task settles), verifier test (absent seed verifies via forge delivery; present seed stays checkout-capture-pending). Both fail without the fix. npm run pregate passes.

Local review

codex (gpt-6.1-terra, medium): 1 of 2 rounds, clean at the published head, no findings.

Closes #16037

…t capture never completed (#16037)

A completed run that owns its task's cleanup but never captured its checkout
was settled as soon as its checkout disappeared, stranding the task in
progress. The absence writer now refuses it until the task moves on, and the
verifier proves delivery from the forge instead of holding on the capture.
@atomantic atomantic added implementer:sonnet-5-5 reviewer:gpt-6-1-terra Locally reviewed by the gpt-6-1-terra model labels Nov 14, 2026
@atomantic
atomantic merged commit 1eb140a into main Nov 14, 2026
17 checks passed
@atomantic
atomantic deleted the claim/issue-16037 branch November 14, 2026 07:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

implementer:sonnet-5-5 reviewer:gpt-6-1-terra Locally reviewed by the gpt-6-1-terra model

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Seed absence settlement strands a cleanup-held task whose owner never captured its checkout

2 participants