T-BOZ6-ensure-ready-cleanup-flag-pass-mode-contract
Status: closed/done · Impact: low · Complexity: small
/sdlc:task-work Step 5a’s prose instructs the operator to invoke the
readiness gate with both --commit-on main and --cleanup-on-fail
(“passing both --commit-on main and --cleanup-on-fail”). But
ensure_ready_mutate.ts rejects --cleanup-on-fail whenever --mode pass is in effect, exiting 2 with --cleanup-on-fail is only meaningful with --mode fail. On the PASS path the operator must therefore drop the
flag the skill told them to pass, which is a silent contract mismatch
between the SKILL.md prose and the script. The fix is to make the two
agree: either the script accepts-and-ignores --cleanup-on-fail on
--mode pass (the flag is a no-op on pass anyway, since there is no
teardown to do), or Step 5a’s prose only adds the flag on the fail
branch.
From T-61OI-check-ancestry-flags-stale-base post-mortem (git@github.com:sksizer/dev.git): “ensure-ready’s
--cleanup-on-failis rejected byensure_ready_mutate.tson--mode pass(‘only meaningful with —mode fail’), but task-work Step 5a’s prose says to pass both flags together — the skill prose and the script contract disagree, forcing the operator to drop the flag on the pass path.”
TBD — receiver to fill before promoting from planning/draft.
Proposed
Section titled “Proposed”TBD — receiver to fill before promoting from planning/draft.
Approach
Section titled “Approach”TBD — receiver to fill before promoting from planning/draft.
Files to touch
Section titled “Files to touch”TBD — receiver to fill before promoting from planning/draft.
Acceptance criteria
Section titled “Acceptance criteria”TBD — receiver to fill before promoting from planning/draft.
Out of scope
Section titled “Out of scope”- none
Dependencies
Section titled “Dependencies”- none
Discovery context
Section titled “Discovery context”Spawned by /sdlc:spawn-task-pr on 2026-06-04 UTC from T-61OI-check-ancestry-flags-stale-base in git@github.com:sksizer/dev.git.