I1952 — Subjekty důkazů se odvozují jednou, v Rustu
Odvodit z existujících deklarací index předmětů z rozhodnutí 9 v ADR 0087, spočítat verdikt předmětu nad jeho členy jedinou agregací a nechat majordomus generate zapsat jej jako site/data/registry/evidence-subjects.json.
HOTOVO vlna 1 · p1 · profil implementation · bezpečné paralelně
Cíl
Odvodit z existujících deklarací index předmětů z rozhodnutí 9 v ADR 0087, spočítat verdikt předmětu nad jeho členy jedinou agregací a nechat majordomus generate zapsat jej jako site/data/registry/evidence-subjects.json.
Proč
Nic nepropojuje widget s předmětem a spojení příkazu s testem se v shellu odvozuje opakovaně, s různými pravidly pro to, která řádka hlavičky se počítá.
Aktuální stav
Neexistuje index podle předmětu. scripts/generate-site-data odvozuje testy commands.json, lib/commands.sh čte první řádek hlavičky a scripts/ci/command-furnished čte kterýkoli řádek.
Cílový stav
evidence::subject odvozuje předměty claim, rule, feature, command, capability, mcp a use_case; RuleState::as_proof() je jediné deklarované mapování ze stavu pravidla; nálezy předmětů jsou samostatný, poradní seznam; majordomus generate zapisuje site/data/registry/evidence-subjects.json, deklarovaný v docs/generated/artifacts.json, takže jeho merge je odvozen; a případ drží odvození v shellu rovná indexu.
Rozsah
- apps/majordomus-cli/src/evidence/subject.rs
- apps/majordomus-cli/src/evidence/mod.rs
- apps/majordomus-cli/src/rules/mod.rs
- apps/majordomus-cli/src/generate.rs
- apps/majordomus-cli/tests/generated_documents.rs
- share/schemas/generated/site-evidence-subjects.schema.json
- site/data/registry/evidence-subjects.json
- test/cases/507_evidence_subjects_are_derived.sh
- docs/EVIDENCE.md
- docs/CLAIMS.yaml
- docs/claims
- .gitattributes
Mimo rozsah
- site/data/generated, které vlastní scripts/generate-site-data a nahrazuje je celé
- Napsaný seznam subjektů
- Schopnost: index čte I1953
- Odmítání kvůli nálezům o předmětu, což je záležitost I1962
Závislosti
- I1948HOTOVO Důkazy se posuzují k předložené revizi jedinou funkcí čerstvosti
- I1947HOTOVO Každá funkce dosáhne testu a každý případ užití má funkci
Co na tom čeká
- I1953BLOKOVÁNO Důkazy odpovídají podle subjektu, na každém povrchu
- I1958BLOKOVÁNO Důkazy mají jednu trasu na subjekt a každý panel je spojen se svým subjektem
- I1962BLOKOVÁNO Kontroly důkazů čtou zjištění subjektů a widgety
Kritéria přijetí
- Index zapisuje jen majordomus generate, do site/data/registry/evidence-subjects.json, a neobsahuje žádný obsah ledgeru ani commit
- Verdikt subjektu se počítá z verdiktů jeho členů, přičemž člen-pravidlo přispívá přes RuleState::as_proof()
- Případ drží testy commands.json shodné s trasami příkazů indexu
- Nálezy subjektů nikdy nevstupují do nálezů reportu tvrzení
Validace
- bash test/run.sh 507_evidence_subjects_are_derived
- majordomus generate --check
- cargo test --workspace --all-features
Požadované důkazy
- subjects_derived_once
- parity_with_shell_derivations
Důkazy
| pokrývá | typ | command | výsledek | u commitu |
|---|---|---|---|---|
| subjects_derived_once | test | bash test/run.sh 507_evidence_subjects_are_derived | ok at 4090b2b8ae: the index is written by generate site under site/data/registry, carries no ledger key, is byte-identical across two derivations, and a hand edit is refused with exit 10 | 4090b2b |
| parity_with_shell_derivations | test | bash test/run.sh 507_evidence_subjects_are_derived | ok na 4090b2b8ae: zapsané stránky příkazů, stránky schopností, stránky doktrín a graf příkazů se rovnají indexu | 4090b2b |
Časová osa
- zahájeno
- 2026-10-08T10:53:02Z
- ověřeno
- 2026-10-08T10:53:08Z
- dokončeno
- 2026-10-08T10:53:13Z
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.
Kanonický záznam: .ai/repo/project/issues/I1952.yaml. Načtěte ho zpět pomocí majordomus plan show I1952.