I2721 — Zapsaný uzel meshe sleduje stabilní ukazatel sám
Přimět každý uzel, který deklarace meshe zapojuje, aby držel svou instalaci na verzi, kterou jmenuje releases/latest.json, s kontrolou při startu serveru, každých 15 minut s jitterem a když mesh oznámí release, a aplikací přes self update.
BLOKOVÁNO vlna 1 · p0 · profil implementation · běží samostatně
Blokováno. Tento úkol nemůže začít, dokud není I2720 hotovo. Stav je z toho odvozen, ne deklarován.
Cíl
Přimět každý uzel, který deklarace meshe zapojuje, aby držel svou instalaci na verzi, kterou jmenuje releases/latest.json, s kontrolou při startu serveru, každých 15 minut s jitterem a když mesh oznámí release, a aplikací přes self update.
Proč
ADR 0161. Dne 2026-10-14 se v0.25.0 dostala na pět uzlů meshe až poté, co je jedna relace ručně upgradovala jeden po druhém, a v0.26.0 ležela na stabilním ukazateli, zatímco každý uzel běžel na 0.25.0.
Aktuální stav
Žádný proces nečte releases/latest.json kromě install.sh spuštěného člověkem.
Cílový stav
Deklarace mesh nese follow: stable | pinned <version> | off pro každý uzel, ve výchozím stavu stable pro zapsaný uzel mesh vlastníka. Server následujícího uzlu kontroluje ukazatel jako výše, nikdy při blokování požadavku, a použije vpřed jdoucí, stable, uvedenou verzi přes self update --apply. Oznámení release v mesh pouze spustí kontrolu; nic, co peer pošle, se nepovažuje za verzi ani digest.
Rozsah
- apps/majordomus-cli/src/mesh
- apps/majordomus-cli/src/commands/serve.rs
- apps/majordomus-cli/src/release
- .ai/repo/mesh/majordomus.yaml
- share/schemas
- docs/MESH.md
- docs/DISTRIBUTION.md
- test/cases
Mimo rozsah
- Síťové načtení při vstupu do repozitáře
- Repozitáře, které přijmou Majordomus bez zapsání strojů do tohoto meshe
Závislosti
Kritéria přijetí
- Následující uzel, jehož nainstalovaná verze zaostává za stabilním ukazatelem, je aktualizován v rámci jednoho intervalu kontroly bez člověka u toho
- Připnutý uzel a uzel s follow: off zůstanou nedotčeny a mesh doctor to uvede
- Oznámení meshe jmenující verzi, kterou metadata neuvádějí, nic nezmění
Validace
- bin/majordomus plan validate
- MJ_TEST_JOBS=4 bash test/run.sh <the case this issue adds>
Požadované důkazy
- node_follows_stable_pointer_test
- peer_announcement_not_trusted_test
Důkazy
Nic nezaznamenáno. Za každým tokenem výše musí stát příkaz nebo artefakt, než lze tento úkol dokončit; vyprávění se odmítá.
Časová osa
- zahájeno
- —
- ověřeno
- —
- dokončeno
- —
Tato tři pole, důkazy výše a stav závislostí jsou vše, z čeho se stav skládá. Neexistuje žádné pole stavu, které by s nimi mohlo být v rozporu.
Kanonický záznam: .ai/repo/project/issues/I2721.yaml. Načtěte jej zpět pomocí majordomus plan show I2721.