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.

I3902 — A hung Pages build is replaced by a declared bound, and the right tree is rebuilt, never redeployed

GitHub's own Pages build that stays `building` or `queued` longer than deploy.build_hung_after (.ai/repo/ci/pages.yaml) is hung: `scripts/pages rebuild` replaces it and says why, a younger one is waited on with its own exit (13), and the scheduled publisher hands a build in flight of the right tree to the rebuild instead of redeploying an identical tree.

BLOKOVÁNO vlna 0 · p0 · profil implementation · bezpečné paralelně

Součást the-runtime-supervises-itself — Runtime říká, co postupuje, čeká nebo se zastavilo, a opravuje jen to, co je bezpečné.

Blokováno. Tento úkol nemůže začít, dokud není hotov milestone:the-runtime-supervises-itself. Stav je z toho odvozen, ne deklarován.

Cíl

GitHub's own Pages build that stays `building` or `queued` longer than deploy.build_hung_after (.ai/repo/ci/pages.yaml) is hung: `scripts/pages rebuild` replaces it and says why, a younger one is waited on with its own exit (13), and the scheduled publisher hands a build in flight of the right tree to the rebuild instead of redeploying an identical tree.

Proč

On 2026-10-22 the deploy of 355a0cee79a pushed gh-pages at 20:28Z. GitHub's build of it was still `building` 47 minutes later while majordomus.dev served 2034d4a3f0b, and the deploy run ended success with a warning. `scripts/pages rebuild` refused every request while any build was in flight, so a hung build could never be replaced. The scheduled `owed` job chose `deploy` for it: forty minutes of rustdoc, UI and Cockpit snapshots to push the same tree, every thirty minutes. The owner, in Czech, asked for it to be solved rock-solid and the Majordomus way, because it is a critical feature: stuck builds must be watched, timed out and killed automatically, because they burn compute minutes and delivery time, and this must be in Majordomus's DNA.

Aktuální stav

A hung GitHub Pages build blocks publication until it ends on its own; nothing replaces it.

Cílový stav

A build in flight past its declared bound is replaced within one schedule; a right tree is never redeployed to get past its own build; every refusal says which of not-yet, unreadable or refused it is.

Rozsah

  • .ai/repo/ci/pages.yaml
  • scripts/pages
  • .github/workflows/pages.yml
  • test/cases/625_a_rebuild_is_asked_only_when_it_helps.sh
  • .ai/repo/project/issues/I3902.yaml
  • .ai/repo/project/issues/I3903.yaml

Mimo rozsah

  • Stuck or stale GitHub Actions runs: I3903.
  • Serving the site from a Pages artifact instead of the gh-pages branch, which would remove GitHub's second build: an ADR first, because gh-pages is also the evidence store (ADR 0087).

Závislosti

Žádné. Tento úkol je kořenem grafu.

Co na tom čeká

Kritéria přijetí

  • A build of this commit in flight past deploy.build_hung_after is replaced, and the output says it was hung
  • A hung build of another commit is replaced as well; a young build of either is waited on with exit 13 and no request
  • A build whose start time cannot be read is never taken for an old one
  • The scheduled remedy hands an errored or in-flight build of the trunk's own tree to the rebuild, and deploys only a stale tree

Validace

  • bash test/run.sh 625_a_rebuild_is_asked_only_when_it_helps

Požadované důkazy

  • case_625

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.

Canonical record: .ai/repo/project/issues/I3902.yaml. Read it back with majordomus plan show I3902.

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