I2731 — Každá třída selhání v publikované tabulce selhání jmenuje svůj test nebo své uvedené omezení
Dát publikované tabulce selhání runtime sloupec důkazu, ve kterém každá třída selhání jmenuje testy, které ji provádějí, nebo uvádí omezení, že ji neprovádí nic, a držet tento sloupec případem, který odmítne řádek s ani jedním z toho i citaci, která se nevyřeší.
HOTOVO vlna 0 · p1 · profil implementation · bezpečné souběžně
Cíl
Dát publikované tabulce selhání runtime sloupec důkazu, ve kterém každá třída selhání jmenuje testy, které ji provádějí, nebo uvádí omezení, že ji neprovádí nic, a držet tento sloupec případem, který odmítne řádek s ani jedním z toho i citaci, která se nevyřeší.
Proč
Leaf FV.3 z 2026-10-15 zjistil, že důkazní token milníku failure_class_table nevlastní žádný úkol: tabulka „Failure behaviour“ v docs/MCP.md říkala, co každé selhání dělá, a nic o tom, co to ukazuje, docs/DEVELOPMENT_RUNTIME.md takovou tabulku neměl a žádný případ neodmítl řádek bez důkazu. Audit základní linie runtime z 2026-10-09 (master 1fb8d6be44) pojmenoval třídy, které žádný test neprovádí: plný disk, adresář žurnálu jen pro čtení, zamrzlý worker, kill mezi vytvořením leasu a jeho prvním zápisem. Tabulka chování bez sloupce s důkazem se čte jako seznam záruk.
Aktuální stav
docs/MCP.md „Failure behaviour“ má sloupec s důkazy nad 28 třídami selhání: 23 cituje testy pod apps/majordomus-cli/tests/ nebo případy pod test/cases/ a 5 uvádí omezení (zmrzlý handler požadavku, plný disk, adresář žurnálu meshe jen pro čtení, kill mezi vytvořením lease a jeho prvním zápisem, selhávající zápis keep-alive lease). Řádek žurnálu jen pro čtení uvádí PR #1179 a #1196 (I2706, případ 3052) jako čekající; na tomto stromě ho žádný test neprovádí. docs/DEVELOPMENT_RUNTIME.md na tabulku odkazuje. Případ 3056 odmítne řádek bez dohledatelné citace i bez zdůvodněného omezení, citaci testovací funkce nebo souboru případu, které strom nemá, omezení bez důvodu a tabulku bez sloupce s důkazy.
Cílový stav
Publikovaná tabulka selhání nemá řádek bez testu nebo uvedeného omezení a případ takový řádek odmítá; řádek omezení se nahradí citací, když přistane test pro jeho třídu.
Rozsah
- docs/MCP.md
- docs/DEVELOPMENT_RUNTIME.md
- test/cases
Mimo rozsah
- Psaní samotných chybějících testů (plný disk, zamrzlý handler, kill mezi vytvořením leasu a jeho prvním zápisem, selhávající zápis keep-alive); každý je při převzetí samostatný úkol
- Připravenost a časové limity požadavků, které vlastní I2157 a I2156
- Trvanlivost žurnálu, kterou I2706 dodává v PR #1179 a #1196
Závislosti
Žádné. Tento úkol je kořenem grafu.
Kritéria přijetí
- Každý řádek tabulky „Failure behaviour“ v docs/MCP.md jmenuje test nebo případ, který tento strom drží, nebo omezení s jeho důvodem
- Případ 3056 selže na řádku bez obojího, na citované testovací funkci nebo souboru případu, který neexistuje, a na tabulce bez sloupce důkazu
Validace
- bin/majordomus plan validate
- bash test/run.sh 3056_every_failure_class_names_its_proof
Požadované důkazy
- failure_class_table
Důkazy
| pokrývá | typ | command | výsledek | u commitu |
|---|---|---|---|---|
| failure_class_table | ci | validate run 39438896504 at master 9a5a9b77520: suite shards 1-4 (jobs 118683336189 118683338077 118683336157 118683336457) run every case, incl. 3056_every_failure_class_names_its_proof (a53fd3b8052) | success (the run's only red job is pages, which runs no test) | a81b1e3 |
Časová osa
- zahájeno
- 2026-10-20T16:17:47Z
- ověřeno
- —
- dokončeno
- 2026-10-20T16:32:41Z
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/I2731.yaml. Přečtěte jej zpět pomocí majordomus plan show I2731.