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.

Hotová práce, která nikdy nedorazila do trunku

Pracovníci produkují mnohem víc, než integrace pojme, a nic nerozlišuje hotovou práci od práce, která je hotová a zároveň přistála.

→ našlo dokončenou práci na větvi, kterou nikdo nikdy nesloučil

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

Okamžik

Změna je dokončená, otestovaná a leží na branchi. Leží tam dva týdny. Pracovník, který ji napsal, ohlásil úspěch a skončil; od té doby nic nemělo povinnost si všimnout, že ta práce existuje.

Proč k tomu dochází

Vytváření práce zlevnilo a integrace ne. Úzké hrdlo se přesunulo na review a merge a nic neměří frontu před tímto úzkým hrdlem, takže přirozenou reakcí je vytvářet víc. V prostředí, z něhož byl tento nástroj vydestilován, osmdesát paralelních snah vyprodukovalo devět mergů.

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

Lepší workeři propast prohlubují. Omezení leží za nimi: lidské rozhodnutí přijmout a kapacita na posouzení, která za ním stojí. Přidáním schopností na straně produkce se nezačleněná hromada jen zvětšuje.

Co to stojí

Každá nemergnutá změna chátrá — s každým dnem víc koliduje — takže práce není jen nečinná, znehodnocuje se. A protože hromada není vidět, tým plánuje, jako by vyprodukovaná práce byla dodaná.

Co Majordomus dělá

Dokončení je událost s typovaným výsledkem, ne zpráva: completed, partial, blocked, no_match, failed, zaznamenaná s ověřovacím příkazem, který proběhl, jeho návratovým kódem a trváním. Hlavní kniha tak rozlišuje, co bylo zahájeno, co předáno a co přijato, a history čte tyto tři zvlášť. Kde repozitář nese plán, úkol není hotový, dokud nejsou pokryty jeho deklarované důkazy, takže „dokončeno workerem“ a „hotovo“ jsou různé stavy s různými kontrolami.

Před a po

before   worker: "complete"          -> branch, indefinitely

after    $ majordomus history --since 7d --event task_finished
         t-…a4f1  completed  verify="make test" exit=0
         t-…b207  partial    "the backfill is written; the cutover is not"

Co nedělá

Neslučuje, nereviduje ani neplánuje integraci. Rozdíl mezi vyrobeným a přijatým činí faktem, který repozitář uvádí, místo odhadu člověka.

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. Osmdesát pokusů, devět merge ai-native-team

    před
    Paralelní pracovníci vyrobí desítky kompletních změn; zlomek se zrevidoval a ještě méně přistálo a nic nezaznamenává, které.
    po
    Finish zaznamenává typovaný výsledek a ověření, které proběhlo; co nebylo dokončeno a co bylo dokončeno jako `partial`, je obojí viditelné.
  2. Měření špatné věci engineering-lead

    před
    Propustnost se hlásí jako vyprodukovaná práce, což je číslo, které lichotí, a číslo, na kterém nezáleží.
    po
    Ledger rozlišuje zahájeno, předáno a dokončeno s výsledkem, takže mezera mezi vyprodukovaným a přijatým je čitelné číslo.
  3. Police dokončených experimentů research-team

    před
    Slibná větev je dokončená a nikdy sepsaná, takže není ani použita, ani zahozena.
    po
    Její předávka jmenuje cíl a další akci a slovník výsledků má hodnotu pro „toto fungovalo a skončilo tady“.

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.

  • Tento týden vzniklo mnohem víc práce, než bylo integrováno, a rozdíl se nikde nesleduje. more-produced-than-merged
  • Něco, co je hlášeno jako hotové, leží na větvi, na kterou se nikdo nepodíval. done-but-unmerged
  • Nic nerozlišuje „worker skončil“ od „změna je v trunku“. no-landed-signal

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í

  • majordomus.verification-integrity
  • majordomus.isolated-parallelism
  • majordomus.verify-outcomes
  • majordomus.project-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.