I3396 — A documented command adds a criterion to a proposed intent, and the getting-started page shows the path from a proposal to a satisfied verdict
Add a writing capability intents.criterion (CLI majordomus intent criterion <id> --criterion <text> --verify <name>) that adds one criterion to an existing intent record, refusing an unknown intent, a duplicate id or an unresolvable reference, and writing the file whole or not at all. Add a step to site/templates/getting-started.html between adding Majordomus and the first task: propose an intent, add its criterion, record the verification, read intent explain. Add the same path to docs/ADOPTION.md. Extend case 2978 for the writer.
BLOKOVÁNO vlna 1 · p1 · profil implementation · bezpečné paralelně
Blocked. This issue cannot start until I3395 is done. The status is derived from that, not declared.
Cíl
Add a writing capability intents.criterion (CLI majordomus intent criterion <id> --criterion <text> --verify <name>) that adds one criterion to an existing intent record, refusing an unknown intent, a duplicate id or an unresolvable reference, and writing the file whole or not at all. Add a step to site/templates/getting-started.html between adding Majordomus and the first task: propose an intent, add its criterion, record the verification, read intent explain. Add the same path to docs/ADOPTION.md. Extend case 2978 for the writer.
Proč
T6 of the owner's report of 2026-10-19. intents.propose deliberately writes no criterion (ADR 0144) and no command adds one, so a newcomer would hand-edit YAML; a separate writer keeps the proposal rule and removes the archaeology.
Aktuální stav
apps/majordomus-cli/src/capability/builtin/intents.rs:15 says intents.propose is the one writer and :590 that it records no criterion; site/templates/getting-started.html:10-32 shows five steps and no intent; grep -n intent docs/ADOPTION.md returns nothing.
Cílový stav
The getting-started page and docs/ADOPTION.md show the path; the writer is served on CLI, HTTP and MCP.
Rozsah
- apps/majordomus-cli/src/capability/builtin/intents.rs
- apps/majordomus-cli/src/commands/intent.rs
- apps/majordomus-cli/tests/intent.rs
- test/cases/2978_an_intent_is_proposed_by_a_capability.sh
- site/templates/getting-started.html
- site/content/getting-started.md
- docs/ADOPTION.md
- docs/generated/cli.json
- docs/generated/cli.md
- docs/generated/cli.yaml
- docs/generated/openapi.json
- docs/generated/openapi.yaml
- docs/generated/registry.json
- docs/generated/registry.yaml
- .ai/repo/mcp-tool-run-baseline.txt
Mimo rozsah
- Planning milestones from the page
- Changing intents.propose
Závislosti
Co na tom čeká
- I3397BLOCKED install-check's first-intent stage reaches a satisfied verdict in a named repository with only the getting-started commands, and counts the doctrine its output exposes
- I3398BLOCKED The T6 protocol says who counts as a newcomer, what each trial records and how many must reach a satisfied verdict unaided, before any trial runs
Kritéria přijetí
- The writer adds one criterion and refuses each invalid input, writing nothing on refusal
- Every command the new getting-started step shows exists in the CLI reference
- Case 2978 covers the writer
- scripts/site-check passes
Validace
- cargo test --manifest-path apps/majordomus-cli/Cargo.toml --test intent
- bash test/run.sh 2978_an_intent_is_proposed_by_a_capability
- majordomus generate --check
- scripts/site-build
- scripts/site-check
Požadované důkazy
- test_intent_criterion_writer
- site_getting_started_shows_first_intent
Důkazy
Nic nezaznamenáno. Za každým tokenem výše musí stát příkaz nebo artefakt, než lze tento úkol dokončit; vyprávění se odmítá.
Časová osa
- zahájeno
- —
- ověřeno
- —
- dokončeno
- —
Tato tři pole, důkazy výše a stav závislostí jsou vše, z čeho se stav skládá. Neexistuje žádné pole stavu, které by s nimi mohlo být v rozporu.
Canonical record: .ai/repo/project/issues/I3396.yaml. Read it back with majordomus plan show I3396.