I3249 — A replan is bounded: past a declared budget of drafts without measurable progress it ends in a named state a person resolves
Declare in .ai/repo/policy.yaml a replan budget (drafts per intent revision without a newly satisfied criterion); intents.draft_plan reports `human_needed` with the criteria that did not move once the budget is spent, and drafts nothing further.
BLOCKED wave 2 · p2 · implementation profile · parallel safe
Blocked. This issue cannot start until I3247 is done. The status is derived from that, not declared.
Objective
Declare in .ai/repo/policy.yaml a replan budget (drafts per intent revision without a newly satisfied criterion); intents.draft_plan reports `human_needed` with the criteria that did not move once the budget is spent, and drafts nothing further.
Why
Autonomy without termination is an unbounded loop (2026-10-08, 2026-10-11, 2026-10-16); the proposed ADR 'Replanning is bounded, idempotent and never weakens its intent' needs one mechanism, not a runtime. Proposed in ADR 0192 (Replanning is bounded, idempotent and never weakens its intent) (proposed; it carries no authority until the owner accepts it). Sources: chatgpt-majordomus:c221#2, chatgpt-majordomus:c270#4.
Current state
No replan exists; nothing counts drafts per intent.
Desired state
Progress is measured from the verdicts at each draft's commit, read from the ledger; the bound is policy data.
Scope
- .ai/repo/policy.yaml
- share/schemas/majordomus/policy
- apps/majordomus-cli/src/policy.rs
- apps/majordomus-cli/src/intent_plan.rs
- apps/majordomus-cli/src/evidence/ledger.rs
- apps/majordomus-cli/src/capability/builtin/intents.rs
- apps/majordomus-cli/tests/intent_plan.rs
Dependencies
Acceptance criteria
- The budget+1th draft with no newly satisfied criterion returns human_needed naming the stuck criteria
- A draft after a criterion moved resets the count
Validation
- majordomus plan validate
- majordomus intent validate
Evidence required
- test_a_replan_is_bounded
Evidence
None recorded. Every token above needs a command or an artifact behind it before this issue can be completed; narrative is refused.
Timeline
- started
- —
- verified
- —
- completed
- —
Those three fields, the evidence above and the state of the dependencies are all the status is made of. There is no status field to disagree with them.
Canonical record: .ai/repo/project/issues/I3249.yaml. Read it back with majordomus plan show I3249.