Přeskočit na obsah

Tato stránka byla automaticky přeložena z angličtiny, jediného jazyka, ve kterém se tento web píše. Číst originál.

Plán rozvoje se odvozuje ze stavu milníků a žádný dokument nesmí být jeho druhou autoritou

Neexistuje žádný soubor plánu rozvoje. Plán rozvoje je graf milníků čtený v pořadí závislostí a

deklarovaný stavdeklarovaný stav: zaručeno Deklarováno jako deterministické a blokující, implementováno a s uvedeným behaviorálním testem, který to má dokázat. Zda to zaznamenaný běh podporuje, říká verdikt důkazů zobrazený vedle.

zaznamenané důkazyzaznamenané důkazy: nespuštěno Deklarováno jako zaručené, ale nepodložené zaznamenaným během: test je pojmenován, ale žádný úspěšný běh nad současnými vstupy zaznamenán není. jak se zaznamenávají důkazy

Pořadí je topologický rank grafu milníků, takže nikde neexistuje seznam verzí. Dokud přežívá ručně psaná tabulka plánu rozvoje, doktrína ji vůči modelu hlídá v obou směrech; jakmile zmizí, kontrola platí triviálně, což je právě regrese, kterou má odmítnout.

Co to znamená

Neexistuje soubor plánu rozvoje. Plán rozvoje je graf milníků čtený v pořadí závislostí a majordomus plan roadmap jej počítá při každém volání. Pozice milníku vychází z toho, co vyžaduje, ne z toho, kam jej někdo zapsal do seznamu.

Dokud kdekoli existuje ručně psaná tabulka plánu rozvoje — jako v README.md, dokud ji nenahradí routa plánu rozvoje na webu — je tato tabulka vázána modelem v obou směrech. Nesmí uvádět verzi, kterou žádný milník nedeklaruje, a nesmí skrývat verzi, kterou model deklaruje. Smí být shrnutím; nesmí být autoritou.

Princip

mj_validate_roadmap čte verze, které model deklaruje z načtených záznamů milníků, a verze, které uvádí sekce ## Roadmap dokumentu README.md. Verze v dokumentu, kterou žádný milník nedeklaruje, je dokument vymýšlející release. Verze v modelu, kterou dokument vynechává, je dokument, který ji skrývá. Obojí je blokující selhání podle doctor a drift podle watch.

Když sekce zmizí, kontrola projde bez porovnání čehokoli. To je záměrné: doktrína odmítá regresi, nevyžaduje tabulku.

Jak to vidět

majordomus plan roadmap          # the sequence, computed from the graph
majordomus doctor                # OK roadmap README.md — every version it lists is a milestone

Přidej řádek pro verzi, kterou nedeklaruje žádný milník, a doctor skončí kódem 10 a pojmenuje ji:

FAIL roadmap     README.md — lists version(s) no milestone declares: 2.0

Co nepokrývá

Porovnává řetězce verzí, ne prózu. Tabulka plánu rozvoje, jejíž popisy zastaraly vůči milníkům, které popisují, přesto projde, protože větu nelze zkontrolovat proti výsledku, aniž by se četlo obojí. Trvalou opravou není lepší kontrola, ale absence tabulky: plán rozvoje na webu vykresluje přímo záznamy milníků.

Neříká také nic o dokumentech, které nezná. Plán rozvoje vložený do wiki nebo slajdu je mimo to, co tento repozitář vidí.

Proč existuje

Plán rozvoje byl markdownová tabulka vyškrabaná do webu generátorem webu a věta „každý krok je podmíněn tím, že předchozí je skutečný“ pod ní stála bez čehokoli, co by tu podmínku vynucovalo. Dvě autority pro tentýž fakt, z nichž jedna byla próza.

Model milníků nahradil tabulku jako zdroj. Tato doktrína brání tomu, aby se tabulka vrátila — protože způsob selhání není, že se někdo rozhodne architekturu opustit, ale že někdo ve spěchu přidá řádek do tabulky a nic nenamítne.

Detail vykreslený z docs/claims/roadmap-derived.md.

Od tvrzení k důkazu

  1. 1 · veřejné tvrzení

    Plán rozvoje se odvozuje ze stavu milníků a žádný dokument nesmí být jeho druhou autoritou

    Učiněno na Planning, Plan.

  2. 2 · kanonické tvrzení

    roadmap-deriveddeklarovaný stav: zaručeno v docs/CLAIMS.yaml

    Definováno v přečtěte si to na tomto webu · docs/ROADMAP.md

  3. 3 · implementace

    lib/doctor.sh · majordomus doctor

  4. 4 · test a scénáře

    Test: test/cases/49_roadmap_doctrine.sh

    Provedeno v Dokončit úkol, jen když existují jeho důkazy.

  5. 5 · zaznamenané běhy

    zaznamenané důkazy: nespuštěno jak se zaznamenávají důkazy

Ověřte si to sami

Test běží v jednorázovém dočasném repozitáři a ověřuje chování, ne řetězec ve zdrojovém kódu.

z klonu repozitáře
bash test/run.sh 49_roadmap_doctrine

Kde se toto tvrzení používá

Související tvrzení stejná implementace

Okamžiky, na které to odpovídá

Prohledává názvy a popisy všech stránek, které tento web publikuje.