I1902 — The gap and the critique of an intent are typed records the plan is held to
Add the gap and critique kinds, their schemas, and intent_review::review, so intent validate refuses an incomplete gap and execution on an uncritiqued plan.
BLOCKED wave 2 · p1 · implementation profile · parallel safe
Part of intent-planning — The plan of an intent is held to it before execution.
Blocked. This issue cannot start until I1901, milestone:intent-planning are done. The status is derived from that, not declared.
Objective
Add the gap and critique kinds, their schemas, and intent_review::review, so intent validate refuses an incomplete gap and execution on an uncritiqued plan.
Why
What a worker observed was missing and what a review of the plan overlooked lived only in a session's scroll, so planning started from a prompt and a missed requirement surfaced after the work.
Current state
No gap or critique record exists.
Desired state
A gap answers every criterion with observations; a critique's findings are resolved open, planned into an issue serving the intent, or rejected with a reason; started work on an uncritiqued plan or with an open blocker is refused.
Scope
- apps/majordomus-cli/src/intent_review.rs
- share/schemas/majordomus/gap
- share/schemas/majordomus/critique
- share/kinds.yaml
- .ai/repo/knowledge/sources.yaml
- share/skeleton/ai/repo/knowledge/sources.yaml
- test/cases/386_a_plan_is_held_to_its_intent.sh
Dependencies
Acceptance criteria
- A gap leaving a criterion unanswered fails intent validate as gap_criterion_unanswered
- A condition asserted with no observation fails as condition_without_observation
- Started work on an intent with no critique fails as executing_without_critique, and with an open blocking finding as executing_with_open_blocker
Validation
- cargo test --lib intent_review
- bash test/run.sh 386_a_plan_is_held_to_its_intent
Evidence required
- an_incomplete_gap_is_refused
- execution_waits_for_the_critique
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/I1902.yaml. Read it back with majordomus plan show I1902.