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.

I1959 — Publikace důkazů je typovaná, svázaná se svým buildem a uchovávaná na gh-pages

Přimět scripts/pages, aby volal evidence publish v checkoutu buildu, odmítl datovou sadu, která není vázána na build, a držel důkazy každé nasazené revize na gh-pages pod evidence/<sha>/, a tím vyřadil prozatímní publikaci z PR #577 (ADR 0087, rozhodnutí 3).

BLOKOVÁNO vlna 4 · p1 · profil implementation · běží samostatně

Součást test-evidence — Každé ověřitelné tvrzení a widget se na každém povrchu převádí na testovací důkaz vázaný na revizi.

Blokováno. Tento úkol nemůže začít, dokud nejsou I1955, I1954 hotovo. Stav je z toho odvozen, ne deklarován.

Cíl

Přimět scripts/pages, aby volal evidence publish v checkoutu buildu, odmítl datovou sadu, která není vázána na build, a držel důkazy každé nasazené revize na gh-pages pod evidence/<sha>/, a tím vyřadil prozatímní publikaci z PR #577 (ADR 0087, rozhodnutí 3).

Proč

ADR 0087 vyřazuje prozatímní publikaci Recorded by CI, jakmile skript volá evidence publish, a artefakty CI expirují, takže důkazy nasazené revize je musí přežít.

Aktuální stav

scripts/pages evidence (PR #577 s I1949) počítá svůj vlastní stav publikace v shellu; nic neodmítne dataset pro jiný commit; důkazy existují jen jako artefakt CI.

Cílový stav

scripts/pages evidence volá majordomus evidence publish; site-build odmítne dataset, jehož předložený commit není build.json.commit, a každé proven, jehož důkazní commit sestavení neobsahuje; gh-pages drží evidence/<sha> pro každou nasazenou revizi; výpis artefaktů je stránkovaný; publikace webu nese první odpovídající řádek tabulky publikace z rozhodnutí 3 v ADR 0087, takže záznam předka je uveden svým commitem vedle dirty, stale, pending nebo unknown, žádný důkaz není pending nebo unknown s důvodem a unavailable se už nepublikuje, jak rozhodnutí 1 mění ADR 0068, když prozatímní sekce končí.

Rozsah

  • scripts/pages
  • scripts/site-build
  • scripts/site-deploy
  • scripts/ci/link-check
  • .github/workflows/pages.yml
  • .github/workflows/validate.yml
  • .ai/repo/ci/pages.yaml
  • .gitignore
  • test/cases
  • test/cases/357_ci_records_evidence.sh
  • docs/EVIDENCE.md
  • docs/GITHUB_PAGES_ARCHITECTURE.md
  • docs/GITHUB_PAGES_PERFORMANCE.md
  • docs/CLAIMS.yaml
  • docs/claims
  • .ai/repo/features/ci.md

Mimo rozsah

  • Nová shellová jednotka
  • Verdikt spočítaný ve skriptu

Závislosti

Co na tom čeká

Kritéria přijetí

  • Datová sada důkazů webu vzniká jen příkazem evidence publish, spuštěným v checkoutu sestavení
  • site-build odmítne dataset pro jiný commit a proven, jehož důkazní commit sestavení neobsahuje
  • Důkazy nasazené revize zůstávají dostupné na gh-pages poté, co vyprší jejich artefakt CI
  • Jakmile prozatímní sekce skončí, záznam jen z předka se nikdy nepublikuje jako current, žádný důkaz se publikuje jako pending nebo unknown s uvedením důvodu a unavailable se nepublikuje, jak rozhodnutí 1 z ADR 0087 mění ADR 0068 ¶3 a ¶4; tvrzeno případem 518

Validace

  • bash test/run.sh 518_evidence_publication_is_bound_to_its_build
  • bash test/run.sh 519_evidence_survives_artifact_expiry

Požadované důkazy

  • publication_bound_to_its_build
  • evidence_outlives_artifacts

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

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