MEDIUM. When the integrator times out (~10min), it returns merged:false, "auto-merge armed, CI pending" — recorded as the ticket's terminal state (e.g. #1479). If CI later fails, GitHub disarms auto-merge and the PR sits open forever with no watcher, ticket never closed. Fix: record a distinct auto-merge-pending status and add a post-run reconciliation agent that confirms each armed PR actually landed (or reports why it disarmed) and closes the ticket.
Filed 2026-06-14 from the delivery-train process-safety audit (after the 22-ticket passband run). Engine: .claude/workflows/delivery-train.js. Anchor failure: #1639 — architect committed an ADR, implementer opened no PR, reviewer got "PR #0", ticket dangled with a stranded branch + leftover worktree.
MEDIUM. When the integrator times out (~10min), it returns
merged:false, "auto-merge armed, CI pending"— recorded as the ticket's terminal state (e.g. #1479). If CI later fails, GitHub disarms auto-merge and the PR sits open forever with no watcher, ticket never closed. Fix: record a distinctauto-merge-pendingstatus and add a post-run reconciliation agent that confirms each armed PR actually landed (or reports why it disarmed) and closes the ticket.Filed 2026-06-14 from the delivery-train process-safety audit (after the 22-ticket passband run). Engine:
.claude/workflows/delivery-train.js. Anchor failure: #1639 — architect committed an ADR, implementer opened no PR, reviewer got "PR #0", ticket dangled with a stranded branch + leftover worktree.