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.

Překryv mezi paralelními pracovníky se počítá na nárokovaných cestách v obou směrech obsažení

Když úloha začíná, Majordomus projde každý další worktree téhož repozitáře, přečte jeho záznam aktivní úlohy, pokud nějaký má, a nahlásí každou položku rozsahu, která obsahuje vaši nebo je jí obsažena: lib/auth se překrývá s lib/auth/oauth v obou směrech. Je to hlášení, ne blokace.

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

Hlásí se, nikdy neblokuje. Rozpracovaná práce se hlásí a nikdy neblokuje.

Co to znamená

Když úloha začíná, Majordomus se podívá na každé jiné worktree téhož repozitáře, přečte jeho záznam aktivní úlohy, pokud nějaký má, a ohlásí každou položku rozsahu, která obsahuje vaši nebo je jí obsažena: lib/auth se překrývá s lib/auth/oauth v obou směrech. Je to hlášení, ne blokace.

Princip

lib/start.sh spustí git worktree list --porcelain, otevře .ai/local/state/current.yaml v každém jiném worktree, ponechá jen záznamy s výsledkem active a po normalizaci testuje každou dvojici cest pomocí mj_path_contains v obou pořadích. check --overlap spouští tentýž report na požádání. Neexistuje žádný vedlejší registr, který by hnil; git je autoritou, které worktree existují.

Jak to vidět

# in worktree A
majordomus start "refresh tokens" --scope lib/auth/oauth
# in worktree B
majordomus start "auth cleanup" --scope lib/auth
# INFO overlap     wt-a — claims lib/auth/oauth — contained by your lib/auth  [reproduce: majordomus check --overlap]

Co nepokrývá

Vidí worktree jednoho repozitáře na jednom stroji. Zda mají dva lidé pracovat na překrývajících se cestách, je koordinační rozhodnutí, takže report nikdy neblokuje.

Proč existuje

Zdrojové prostředí porovnávalo claimy přesnou shodou řetězců, takže se apps/x a apps/x/ nikdy nepřekrývaly a podstrom se nikdy nepřekrýval se svým rodičem. Jeho dva konzumenti se dokonce lišili v pravidle shody. Opravou je jedna normalizovaná funkce porovnávání, kterou používá každý volající.

Detail vykreslený z docs/claims/overlap-report.md.

Od tvrzení k důkazu

  1. 1 · veřejné tvrzení

    Překryv mezi paralelními pracovníky se počítá na nárokovaných cestách v obou směrech obsažení

    Vytvořeno na Koordinace, Rozsah.

  2. 2 · kanonické tvrzení

    overlap-reportdeklarovaný stav: zaručeno v docs/CLAIMS.yaml

    Definováno v přečtěte si to na tomto webu · docs/DESIGN.md

  3. 3 · implementace

    lib/check.sh · majordomus check

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

    Test: test/cases/04_start_check.sh

    Provedeno v Zachyťte agenta, který říká, že je hotov, a není, Provozujte několik pracovníků v jednom repozitáři, aniž by se srazili, Dodávejte úkoly ve vlnách, které spočítá graf, a berte další.

  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 04_start_check

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.