I2853 — nasazení Pages na čerstvém masteru není odmítnuto kvůli tvrzením novějším, než je ledger, který čte
`scripts/pages published-evidence` čte tvrzení `not run`, jehož test neexistuje v žádném z commitů, vůči nimž byl ledger zaznamenán, jako dosud nezaznamenané: je uvedeno ve výstupu a nezapočítává se proti základní hodnotě published-not-run. Tvrzení, jehož test v době záznamu ledgeru existoval, se počítá dál, a započítává se každé tvrzení, pokud žádný commit ledgeru není v historii.
HOTOVO vlna 0 · p1 · profil implementation · bezpečné souběžně
Cíl
`scripts/pages published-evidence` čte tvrzení `not run`, jehož test neexistuje v žádném z commitů, vůči nimž byl ledger zaznamenán, jako dosud nezaznamenané: je uvedeno ve výstupu a nezapočítává se proti základní hodnotě published-not-run. Tvrzení, jehož test v době záznamu ledgeru existoval, se počítá dál, a započítává se každé tvrzení, pokud žádný commit ledgeru není v historii.
Proč
První nasazení Pages verze 0.30.0 (běh 39145730187, master 2dfff96988a, 2026-10-18) selhalo v ui-snapshot. Validace masteru ještě běžela, takže publikace četla ledger předchozího masteru (707a04c7ce83, o 141 commitů pozadu). Tři zaručená tvrzení přidaná od té doby (mcp-client-always-served, release-prerelease-channel, session-start-prompt) se četla jako `not run` nad základní hodnotou nula. Žádný běh testu, který v době záznamu ledgeru neexistoval, nemůže být v tomto ledgeru, takže každé nasazení v ~90 minutách před zaznamenáním důkazů čerstvého masteru bylo odmítnuto kvůli mezeře, která nebyla chybějícím důkazem. Našel 3e, přidělil pro 0.30.2 release role.
Aktuální stav
published-evidence porovnává celkový počet `not run` se základní hodnotou a odmítne nad ní, ať už každé tvrzení `not run` způsobilo cokoli.
Cílový stav
published-evidence odečte tvrzení `not run`, jejichž cesta testu (souborová část `path::name`) neexistuje v žádném z commitů ledgeru, které tato historie obsahuje, pojmenuje je jako novější než ledger a zbytek porovná se základní hodnotou; ledger mimo historii neomlouvá nic.
Rozsah
- scripts/pages
- test/cases/3242_a_claim_newer_than_the_ledger_is_not_yet_recorded.sh
Mimo rozsah
- Nechat nasazení čekat na artefakt důkazů masteru: druhá náprava, kterou release role pojmenovala. Není potřeba, když novější tvrzení není důvodem k odmítnutí, a zdržovalo by každé nasazení.
- Jak zveřejněné UI vyjadřuje tvrzení novější než ledger: čte se jako `not run`, což je pravda; samostatný stav `not yet recorded` v evidence.report je změna schopnosti.
Závislosti
Žádné. Tento úkol je kořenem grafu.
Kritéria přijetí
- Tvrzení not-run, jehož test neexistuje v žádném commitu ledgeru, je pojmenováno a nezapočítává se proti základní hodnotě
- Tvrzení not-run, jehož test existoval v commitu ledgeru, je stále odmítnuto nad základní hodnotou
- Ledger, jehož žádný commit není v historii, neomlouvá žádné tvrzení
Validace
- bin/majordomus plan validate
- bash test/run.sh 3242_a_claim_newer_than_the_ledger_is_not_yet_recorded 3178_the_published_ui_reads_the_evidence_ci_recorded
Požadované důkazy
- a_claim_newer_than_the_ledger_case
Důkazy
| pokrývá | typ | command | výsledek | u commitu |
|---|---|---|---|---|
| a_claim_newer_than_the_ledger_case | ci | validate run 39438896504 at master 9a5a9b77520: suite shards 1-4 (jobs 118683336189 118683338077 118683336157 118683336457) run every case, incl. 3242_a_claim_newer_than_the_ledger_is_not_yet_recorded (29acb77dd13) | success (the run's only red job is pages, which runs no test) | a81b1e3 |
Časová osa
- zahájeno
- 2026-10-20T16:16:37Z
- ověřeno
- —
- dokončeno
- 2026-10-20T16:30:56Z
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/I2853.yaml. Přečtěte jej zpět pomocí majordomus plan show I2853.