Konzistence stavu
Záznam úlohy stále popisuje tento checkout — stejná větev a HEAD na zaznamenaném commitu nebo před ním.
blokující Porušení zastaví příkaz s kódem 10.
Řetězec
Pravidlo je vynucováno, jen když platí každý článek níže. majordomus doctor každý z nich při každém běhu řeší ze zdroje; tato stránka ukazuje, co vyřešil.
- 1 Deklarováno majordomus.state-consistency
- 2 Validátor mj_validate_state
- 3 Běží pod check, finish, watch
- 4 Při porušení exit 10
- 5 Dokázáno test/cases/04_start_check.sh
- 6 Spouští CI .github/workflows/validate.yml
Kde běží
- majordomus checkJe aktuální úloha stále konzistentní se svou politikou, rozsahem a tímto checkoutem?
- majordomus finishVyhodnotí kontrakt dokončení a odmítne výsledek, pokud je jakýkoli jeho řádek nesplněn.
- majordomus watchCo se od poslední aktualizace rozjelo: politika, projekce, stav, uchovávání.
Repozitář si tuto linii kontraktu dokončení zvolí tím, že uvede state_updated v verification.finish_requires. Požadavek, který politika jmenuje a žádná doktrína ho nedefinuje, se ohlásí a je odmítnut.
Co nám umožňuje slíbit
- zaručeno Pole identity na každém záznamu stavu se počítají z gitu a nikdy se nepíšou
- zaručeno check hlásí, zda jsou stav, rozsah, blokátory a stáří checkpointu právě teď konzistentní
- zaručeno Stav přečtený zpět je proti gitu označen jako exact, advanced, diverged nebo different_context
Čti zde
majordomus doctrine show majordomus.state-consistency
majordomus check --rule majordomus.state-consistency