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.

Architektonické rozhodnutí je jeden soubor v sekci adrs vrstvy, validovaný proti kontraktu rozhodnutí, s identitou, o kterou se nehlásí nic jiného, s reciprokým nahrazením a s rozřešením každého odkazu, který činí

Rozhodnutí jsou data, ne próza, kterou nástroj náhodou ukládá. .ai/repo/adrs/<NNNN>-<slug>.md

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

share/kinds.yaml deklaruje druh, share/schemas/majordomus/adr/adr.v1.schema.json jeho kontrakt (share/allow/adr.txt se z něj generuje) a třída zdrojů adr v .ai/repo/knowledge/sources.yaml říká, které soubory jej nesou; nic jiného rozhodnutí neregistruje. lib/adr.sh odvozuje z tohoto objevování jeden katalog pro `adr list|show|check` a pro mj_validate_adr, validátor majordomus.adr-integrity spouštěný z doctoru a watch. Případ procvičuje duplicitní identity, neznámý stav, verzi schématu, kterou nic nečte, jednostranné nahrazení, nahrazený záznam bez náhrady a chybějící sekci těla.

Co to znamená

Rozhodnutí je data, ne próza, kterou nástroj náhodou uchovává. .ai/repo/adrs/<NNNN>-<slug>.md nese front matter ověřený proti share/schemas/majordomus/adr/adr.v1.schema.json — identifikátor schématu, identitu adr-NNNN, druh, název, jeden ze čtyř stavů, datum dosažení tohoto stavu a volitelně štítky, nahrazení a původ — nad tělem s neprázdnými # Context, # Decision a # Consequences. Neznámý klíč je chyba, neznámý stav je chyba a verze schématu, kterou nástroj nezná, se odmítne, ne hádá.

Tři invarianty platí napříč sadou, ne v rámci jednoho souboru. Identitu nárokuje právě jeden záznam a určuje prefix názvu souboru, takže přejmenování posune slug, nikdy číslo. Nahrazení je vzájemné: supersedes u jednoho záznamu vyžaduje superseded_by u druhého, protože řetěz, kterým jde projít z jednoho konce, není řetěz. A každá reference, kterou záznam činí — rozhodnutí, které nahrazuje, soubor či test, z něhož byl odvozen — se rozliší.

Princip

share/kinds.yaml deklaruje druh, share/schemas/majordomus/adr/adr.v1.schema.json je jeho smlouva a seznam povolených share/allow/adr.txt se generuje z tohoto schématu. Objevování je zdrojová třída adr v .ai/repo/knowledge/sources.yaml; nic jiného rozhodnutí neregistruje, takže přidání souboru je celá registrace.

lib/adr.sh odvozuje z tohoto zjištění jeden katalog a čtou jej všechny povrchy: adr list, adr show, adr check a mj_validate_adr, validátor doktríny majordomus.adr-integrity, spouštěný z doctor a watch, který selhává s exit 10 v kategorii adr.

Jak to vidět

majordomus adr list                    # every decision: id, status, date, title
majordomus adr list --status proposed  # only the ones waiting for a person
majordomus adr check                   # every identity, status, reference and section
majordomus adr check --json            # the same, for a machine

Co nepokrývá

Kontrakt je strukturální. Zda je rozhodnutí správné nebo zda byly promyšleny jeho důsledky, je úsudek člověka; nástroj zaručuje, že sada je čitelná, jednoznačná a vnitřně konzistentní a že rozbitý odkaz najde příkaz, nikoli čtenář o měsíce později.

Proč existuje

Tento repozitář vydal dva 0005 a dva 0007, než cokoli kontrolovalo. Duplicitní identity a jednostranné nahrazení jsou přesně ta selhání, která lidský čtenář nezpozoruje a stroj najde okamžitě, takže sada se validuje tak jako každý jiný druh ve vrstvě.

Detail vykreslený z docs/claims/adr-catalogue.md.

Od tvrzení k důkazu

  1. 1 · veřejné tvrzení

    Architektonické rozhodnutí je jeden soubor v sekci adrs vrstvy, validovaný proti kontraktu rozhodnutí, s identitou, o kterou se nehlásí nic jiného, s reciprokým nahrazením a s rozřešením každého odkazu, který činí

    Vzniklo na Knowledge, Layer.

  2. 2 · kanonické tvrzení

    adr-cataloguedeklarovaný stav: zaručeno v docs/CLAIMS.yaml

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

  3. 3 · implementace

    lib/adr.sh · majordomus adr

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

    Test: test/cases/99_adr.sh

    Provedeno v Zaznamenat rozhodnutí jako data a prokázat, že ho nástroj nemůže přijmout za vás.

  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 99_adr

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.