You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Implement the implement → gate → fix inner loop with long-session checkpointing — Spec §4.2 steps c–d plus §18.9. This is one in-flight issue's path from a fresh feature branch to passing gates (or a parked blocker).
On gate failure, feed structured results back to a bounded number of AI fix attempts (limits.test_fix_attempts, default 3, from project.yamlproject.yaml Pydantic schema and fail-fast loader #4); still failing after the bound → park the issue and record a structured blocker (§9), do not loop forever.
30-minute soft checkpoint (§18.9): when a session crosses 30 min wall-clock, signal a stop at the next safe boundary (after the current tool call/edit completes and changes are committed), log progress to the state marker (Per-issue state markers and resume-or-reset crash recovery #24), commit WIP on the feature branch, then start a fresh session that resumes the same issue (not the loop).
Checkpoint stop only ever happens at a committed point, so it never triggers the discard-and-restart path (§18.4) — verified.
Stuck-agent guard (§18.9): if the same issue hits the checkpoint 3 times without producing an internal PR, park it as a blocker and notify, instead of a fourth session. The checkpoint count is per-issue and resets when the issue produces a PR or is parked.
Tests: gate pass first try; gate fail then fix within bound; exceed test-fix bound → parked blocker; checkpoint at 30 min commits + resumes same issue; third checkpoint without PR → parked.
Notes
Backend API-contract verification (§4.2 step e) runs after this loop and before review; it is wired by the driver (#29). Notify-on-park uses the escalation path (Phase 5) — emit the structured blocker record here; channel delivery is Phase 5.
Implement the implement → gate → fix inner loop with long-session checkpointing — Spec §4.2 steps c–d plus §18.9. This is one in-flight issue's path from a fresh feature branch to passing gates (or a parked blocker).
Spec §4.2 (steps b–d), §18.9 (long-session checkpointing + stuck-agent guard), §15/§16.3
limits.test_fix_attempts(default 3), §9 (park as blocker).Acceptance criteria
implement(Spec §17.3 implement stage).limits.test_fix_attempts, default 3, fromproject.yamlproject.yaml Pydantic schema and fail-fast loader #4); still failing after the bound → park the issue and record a structured blocker (§9), do not loop forever.Notes
Backend API-contract verification (§4.2 step e) runs after this loop and before review; it is wired by the driver (#29). Notify-on-park uses the escalation path (Phase 5) — emit the structured blocker record here; channel delivery is Phase 5.
Depends on: #11, #12, #17, #22, #24