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.

Každý profil se parsuje, jeho neznámé klíče se odmítnou a výchozí profil se prokáže jako existující

Každý soubor v .ai/repo/profiles/ musí jít naparsovat, smí nést jen známé klíče, jeho name se musí rovnat názvu souboru a profil, který politika uvádí jako výchozí, musí existovat jako soubor. Politika, která ukazuje na profil, který nikdo nenapsal, je selhání, ne návrat k něčemu jinému.

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

Co to znamená

Každý soubor pod .ai/repo/profiles/ se musí parsovat, smí nést jen známé klíče, musí mít name rovné názvu souboru a profil, který politika jmenuje jako výchozí, musí existovat jako soubor. Politika, která ukazuje na profil, který nikdo nenapsal, je selhání, ne návrat k něčemu jinému.

Princip

lib/doctor.sh prochází adresář profilů, zploští každý soubor stejným parserem, jaký používá politika, zkontroluje klíče proti share/allow/profile.txt, porovná name s názvem souboru a nakonec vyhledá profiles.default z politiky na disku. majordomus start provede totéž vyhledání pro profil, který úloha jmenuje, a odmítne s exit kódem 12, když soubor chybí.

Jak to vidět

sed -i.bak 's/^name: routine/name: other/' .ai/repo/profiles/routine.yaml
majordomus doctor
# FAIL profiles    routine — name field 'other' does not match filename

Co nepokrývá

Doctor neposuzuje, zda jsou hodnoty profilu pro váš tým rozumné; effort: max na routine se zparsuje bez potíží. Ověřuje tvar a existenci.

Proč existuje

Ve zdrojovém prostředí byly nalezeny čtyři navzájem nekonzistentní, nevynucované slovníky stavů a profily, které existovaly jen v próze. Profil je rozhodnutím jen tehdy, když ho příkaz umí přečíst a selhat, když chybí.

Detail vykreslený z docs/claims/profile-validate.md.

Od tvrzení k důkazu

  1. 1 · veřejné tvrzení

    Každý profil se parsuje, jeho neznámé klíče se odmítnou a výchozí profil se prokáže jako existující

    Vytvořeno na Policy, Profiles.

  2. 2 · kanonické tvrzení

    profile-validatedeklarovaný 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/doctor.sh · majordomus doctor

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

    Test: test/cases/02_doctor_basic.sh

    Provedeno v Důvěřujte politice a profilům až po jejich validaci.

  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 02_doctor_basic

Kde se toto tvrzení používá

pokryté odpovědnosti

Související tvrzení stejná implementace

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