amend(§4): budget_cycles default 5->3; spec_ambiguous exempt from budget #2
Reference in New Issue
Block a user
Delete Branch "amendment/budget-cycles-3-spec-ambiguous-exempt"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Implements amendment §4 from
docs/multi-project-orchestration-plan_amendments.md. Two small changes:1. Schema default:
budget_cycles5 → 3 (per-row override remains supported).2.
cycle.py: when a spec phase emitsspec_ambiguous, the cycle now rolls back the claim'sattemptsincrement before routing toawaiting_human. Rationale:spec_ambiguousis the spec-refiner raising a question to the human; penalizing the autonomous budget for asking the question is wrong. Budget resumes counting only on autonomous retries after the human answers and the item returns tospec.Tests (19/19 contract+unit pass against live MySQL after
ALTER TABLEapplied):test_budget_default_three_per_amendment_section4— codifies the schema defaulttest_spec_ambiguous_does_not_consume_budget— codifies the rollback ruleLive DB: also
ALTER TABLE work_items ALTER COLUMN budget_cycles SET DEFAULT 3'd the running MySQL so new rows get the new default. Existing rows keep their per-rowbudget_cyclesvalue (e.g.e2e-reviewer-01still has budget=5).Out of scope: the migration PR (#1, Postgres+Taskiq) carries
spec_wrongplumbing changes that overlap withcycle.py. Once that PR merges, a follow-up rebase will reconcile the two cycle.py edits — they touch different lines.