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.

Změna, jejíž původ nelze rekonstruovat

Přisouzení končí u commitu, takže co změnu schválilo, co ji ověřilo a co ji řídilo, nelze zpětně zjistit.

→ dostal otázku, kdo změnu udělal a podle jaké politiky, a měl jen commit

cena, když k tomu dojde
vysoká
jak často
běžné

Okamžik

„Kdo tuto změnu provedl, co ji schválilo a co ji ověřilo?“ Dostupná odpověď je commit s lidským autorem, zpráva napsaná pracovníkem a sloučený pull request s jedním schválením. Nic z toho není odpovědí na žádnou ze tří otázek.

Proč k tomu dochází

Git zaznamenává autorství patche, což byl dobrý zástupný údaj, dokud každý řádek psal člověk. Už to neplatí: pole autora zaznamenává, kdo worker spustil, a vše ostatní, na čem záleží — cíl, hranice, platná politika, proběhlé ověření — je buď v konverzaci, nebo nikde.

Proč to lepší model nevyřeší

Neexistuje inference, která obnoví, co nebylo nikdy zaznamenáno. Požádat model, aby z diffu rekonstruoval původ, vyrobí věrohodný příběh, což je při auditu horší než nic.

Co to stojí

V regulovaném prostředí schopnost vůbec doložit kontrolu. Všude jinde schopnost odpovědět na nejčastější otázku při revizi incidentu: co jsme si mysleli, že děláme, a co to ověřilo.

Co Majordomus dělá

Identifikační pole se počítají z gitu a nikdy se nepíšou ručně: záznam, který jmenuje branch, head, pracovní strom nebo sadu změněných souborů, měl tyto hodnoty spočítané v okamžiku zápisu, a pracovník, který je dodá, je chyba, nikoli přepsání. Commit nese úlohu, která jej vyprodukovala. Úloha nese svůj cíl, deklarovaný rozsah a profil, pod kterým běžela. Účetní kniha nese události — zahájeno, checkpoint, rozhodnuto, předáno, dokončeno s typovaným výsledkem a ověřovací příkaz s návratovým kódem a délkou. Generované instrukční soubory nesou hash politiky, která je vytvořila, takže to, která pravidla platila, je sledovaný fakt.

Před a po

before   commit 8c31f0e  "fix auth"  author: a person

after    $ majordomus history --task t-20260903193012-a4f1
         task_started   objective="split the callback validation" profile=implementation
                        scope=lib/auth,test/auth  head=1f0a3c2
         decision       "normalise before comparing"  why=...  rejected=...
         task_finished  outcome=completed  verify="make test" exit=0 1m12s  head=8c31f0e

Co nedělá

Neurčuje, který model nebo dodavatel změnu vytvořil, a nic nepodepisuje. Zaznamenává, co tento repozitář rozhodl, vymezil, spustil a přijal, s identifikačními poli počítanými, ne tvrzenými.

Jak to vypadá

Konkrétní situace, jedna pro každé publikum. Každá je deklarována v záhlaví okamžiku, takže stav před a po jsou data, ne próza, od které by se stránka mohla odchýlit.

  1. O šest měsíců později enterprise

    před
    Auditor se ptá, co změnu autorizovalo a co ji ověřilo; artefakty jsou commit a mergnutý pull request.
    po
    Commit nese svou úlohu; úloha nese cíl, rozsah, profil a výsledek; ledger nese ověření, které proběhlo.
  2. Klient se ptá, co se udělalo a proč agency

    před
    Rekonstruovat zakázku znamená číst diffy a vzpomínat si na konverzace.
    po
    Události jsou strukturované a čitelné zpět po úlohách, spolu s rozhodnutími a otázkami, které je řídily.
  3. Která pravidla platila platform-team

    před
    Pravidla se během projektu dvakrát změnila a nic nezaznamenává, podle které verze byla která změna provedena.
    po
    Projekce nesou hash politiky, z níž byly vygenerovány, a politika je sledovaný soubor s historií.

Jak to poznáte

Pozorovatelné příznaky, které tento okamžik deklaruje. Jsou dotazníkem na indexu a vstupem pro majordomus why diagnose; nic jiného je nedefinuje.

  • Celým záznamem změny je zpráva jejího commitu. only-a-commit
  • Nikdo nemůže říct, jaká verze pravidel platila, když se změna prováděla. which-policy-applied
  • Práce vytvořená workerem se přičítá tomu, kdo stiskl tlačítko. human-author-machine-work

Kde to v nástroji najdete

Vše níže je načteno z vlastního záhlaví tohoto okamžiku a ověřeno proti repozitáři. Neexistující název by neprošel validací.

příkazy, které na to odpovídají

schopnosti spustitelného souboru, které na to odpovídají

co dohlíží — odvozeno z tvrzení níže

tvrzení, která tuto stránku podpírají, a důkazy za každým z nich

pravidla, která jej řídí

  • project.never-author-identity
  • majordomus.ledger-integrity
  • majordomus.session-records
  • majordomus.projection-integrity

případy užití, které ukazují cestu ven

Pokud vám tohle zní povědomě, další také

Co tento okamžik pojmenovává, co pojmenovává jeho a co sdílí jeho oblast, publikum nebo štítky. Druhé a třetí je odvozeno; zapsáno je jen první.

Všech 38 a jak souvisejí s nástrojem →

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