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.

Výsledek je hodnota z uzavřeného slovníku, ne volný text

Úloha končí právě jedním z completed, partial, blocked, no_match, failed (plus handed_over, když pokračuje jinde, a active, dokud běží). no_match znamená, že práce byla provedena a hledaná věc neexistuje; failed znamená, že práci nešlo provést. V chatu vypadají podobně — "nic jsme nenašli" versus "nemohli jsme hledat" — a jsou to různé fakty, které musí dozor rozlišit, aby rozhodl, zda zopakovat, eskalovat, nebo přijmout.

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

no_match znamená, že práce byla provedena a hledaná věc neexistuje. failed znamená, že práci nešlo provést. Jsou to různé skutečnosti.

Co to znamená

Úloha končí právě jedním z completed, partial, blocked, no_match, failed (plus handed_over, když pokračuje jinde, a active, dokud běží). no_match znamená, že práce byla provedena a hledaná věc neexistuje; failed znamená, že práci nebylo možné provést. V chatu vypadají podobně — „nic jsme nenašli“ versus „nemohli jsme hledat“ — a jsou to různé fakty, které musí dozor rozlišit, aby rozhodl, zda opakovat, eskalovat, nebo přijmout.

Princip

lib/finish.sh odmítne jakoukoli jinou hodnotu --outcome s chybou použití. Každý výsledek má vlastní kontrakt: completed vyžaduje ověření a úplnou poznámku; partial a blocked vyžadují poznámku s # Next Action; no_match a failed vyžadují # Reason; blocked přeskočí řádek otevřených otázek, protože otevřené otázky se očekávají. Hodnota se zapíše do záznamu úlohy a ledgeru, kde ji watch kontroluje proti událostem task.finished ledgeru.

Jak to vidět

majordomus finish --outcome done
# majordomus: finish: unknown outcome 'done'
majordomus finish --outcome no_match --note n.md
# … lacks section(s): Reason   (until the note explains what was not there)

Co nepokrývá

Slovník je pevný; přidání výsledku je změna smlouvy finish, ne konfigurační volba.

Proč existuje

Sto padesát sedm z dvou set devadesáti osmi poznámek relací ve zdrojovém prostředí neslo řádek Status:; hodnoty byly volný text ve dvou jazycích, včetně jedné, která zněla „velmi nízká pravděpodobnost, kritický dopad“. Próza nikdy nenahradí typované pole.

Detail vykreslený z docs/claims/typed-outcome.md.

Od tvrzení k důkazu

  1. 1 · veřejné tvrzení

    Výsledek je hodnota z uzavřeného slovníku, ne volný text

    Vytvořeno na Kontrakt dokončení, Finish.

  2. 2 · kanonické tvrzení

    typed-outcomedeklarovaný 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/finish.sh · majordomus finish

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

    Test: test/cases/06_finish.sh

    Provádí se v Přistihnout agenta, který říká, že je hotov, a není, Rozhodnout, zda je dokončená práce skutečně dokončená, Zablokovat přijetí kvůli otázce, na kterou nikdo neodpověděl.

  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 06_finish

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.