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.

I0905 — Liveness a readiness jsou registrované schopnosti, ne hacky routeru

Zpřístupnit levné endpointy liveness a readiness přes registr schopností, aby kontrola zdraví providera, test kontejneru i smoke sada mířily na trasy, které registr zná.

PŘIPRAVENO vlna 2 · p0 · profil implementation · bezpečné paralelně

Součást fly-deployment — Image kontejneru je projekcí modelu repozitáře a jeho smoke test je jeho důkazem.

Připraveno. Všechny závislosti jsou hotové, takže majordomus plan start I0905 bude přijato.

Cíl

Zpřístupnit levné endpointy liveness a readiness přes registr schopností, aby kontrola zdraví providera, test kontejneru i smoke sada mířily na trasy, které registr zná.

Proč

Trasa zdraví přidaná přímo do routeru by byla neviditelná pro OpenAPI, dokumentaci i smoke sadu odvozenou z tras — tři projekce by tiše postrádaly endpoint, který platforma dotazuje nejčastěji.

Aktuální stav

system.health stále agreguje diagnostiku indexu, pokrytí měřením výkonu a zastarání projekcí a liveness a readiness jsou nyní samostatné registrované schopnosti v apps/majordomus-cli/src/capability/builtin/health.rs, každá s vlastním handlerem a unit testy. 2026-09-10 změnilo i okolní polovinu: ADR 0035 učinilo stav samotného serveru schopností (server.status, GET /api/v1/server), report zdraví jmenuje proces za adresou a readiness přestalo znamenat tři nesouvisející věci (PR #153, PR #164). Co zde ustaveno není, je zbytek kontraktu -- změřená cena v rámci rozpočtu blokující kontroly a objekt nasazení, jehož validace odmítne odkaz na trasu, která není registrována. Změřeno na master 6042f4286, 2026-09-10.

Cílový stav

Liveness odpovídá, zda je tento proces živý, levně a bez doteku vrstvy. Readiness odpovídá, zda může obsluhovat provoz, a kontroluje jen lokální inicializaci. Obojí je registrováno, obojí zdokumentováno a obojí má změřenou cenu.

Rozsah

  • apps/majordomus-cli/src/capability/builtin/health.rs

Mimo rozsah

  • Kontaktování jakéhokoli externího poskytovatele nebo síťové služby kvůli rozhodnutí o připravenosti
  • Nahrazení nebo oslabení stávajícího agregátu system.health

Závislosti

Co na tom čeká

Kritéria přijetí

  • Liveness se vrací rychle bez procházení souborového systému, sestavení indexu a přístupu k síti
  • Připravenost kontroluje jen lokální inicializaci potřebnou k obsluze, nikdy externího poskytovatele
  • Ani jedno nevyžaduje autentizaci a obě jsou registrované schopnosti, které se objevují v OpenAPI a ve vygenerované referenci
  • Změřená cena každé je zaznamenána a zůstává v rozpočtu blokujících kontrol, který politika deklaruje
  • Kanonický objekt nasazení odkazuje na tyto routy a validace odmítne odkaz na routu, která není registrována

Validace

  • cargo test --workspace --all-features
  • majordomus generate --check

Požadované důkazy

  • healthz_registered
  • readyz_registered
  • cheap_measured

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á.

Riziko

Kontrola připravenosti, která vyroste v sondu závislostí, způsobí selhání nasazení, protože nesouvisející služba je mimo provoz. Připravenost odpovídá na jednu otázku: může tento proces obsloužit stránku.

Č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/I0905.yaml. Přečtěte ho zpět pomocí majordomus plan show I0905.

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