Skip to content

I2786 — The published UI reads the evidence CI recorded, and a publication that would show tests as not run is refused

Give the Pages workflow's UI snapshot job the ledger the validation of the published commit, or of its nearest validated ancestor, recorded (scripts/pages evidence --ledger-out), before the UI is read; then refuse to publish when evidence.report still counts more not-run claims than .ai/repo/evidence/published-not-run.txt declares (scripts/pages published-evidence); with the rule, a case and the documentation.

DONE wave 0 · p0 · implementation profile · runs alone

Part of test-evidence — Every verifiable claim and widget resolves to revision-bound test evidence, on every surface.

Objective

Give the Pages workflow's UI snapshot job the ledger the validation of the published commit, or of its nearest validated ancestor, recorded (scripts/pages evidence --ledger-out), before the UI is read; then refuse to publish when evidence.report still counts more not-run claims than .ai/repo/evidence/published-not-run.txt declares (scripts/pages published-evidence); with the rule, a case and the documentation.

Why

On 2026-10-16 the owner saw https://majordomus.dev/ui/kiosk/ show 154 test claims as not run. The validation of the same commit had recorded 606 executions in its evidence artifact; the snapshot read the tracked ledger, which holds fourteen local runs because the recording branch (ADR 0080, I1954) is not built. Over that artifact the report reads 235 proven and 0 not run.

Current state

The ui-snapshot job reads the tracked ledger alone, and nothing counts what a publication shows as not run.

Desired state

The ui-snapshot job puts the run's ledger in place and refuses a publication whose not-run count exceeds the declared baseline of 0.

Scope

  • .github/workflows/pages.yml
  • scripts/pages
  • .ai/repo/evidence/published-not-run.txt
  • .ai/repo/rules/project/published-evidence-is-what-ci-recorded.v1.md
  • .ai/repo/adrs/0087-evidence-is-indexed-by-subject-and-judged-at-the-presented-revision.md
  • test/cases/3178_the_published_ui_reads_the_evidence_ci_recorded.sh
  • docs/EVIDENCE.md
  • docs/MAJORDOMUS_UI.md

Dependencies

None. This issue is a root of the graph.

What waits on this

Acceptance criteria

  • scripts/pages evidence --ledger-out puts the run's ledger in place only for an artifact of the published history
  • scripts/pages published-evidence exits 10 over the baseline, 0 within it, 12 when the report or the baseline cannot be read
  • The published kiosk shows no claim as not run that CI ran

Validation

  • majordomus plan validate
  • bash test/run.sh 3178_the_published_ui_reads_the_evidence_ci_recorded
  • bash test/run.sh 357_ci_records_evidence

Evidence required

  • case_3178

Evidence

coverstypecommandresultat commit
case_3178testbash test/run.sh --no-skips 3178_the_published_ui_reads_the_evidence_ci_recorded 357_ci_records_evidence3178 and 357 ok, 0 skipped (code since 302adff89b4, an ancestor of 4a4573690f8; re-run at 4a4573690f8)4a45736

Timeline

started
2026-10-17T18:25:54Z
verified
2026-10-17T18:26:03Z
completed
2026-10-17T18:26:11Z

Those three fields, the evidence above and the state of the dependencies are all the status is made of. There is no status field to disagree with them.

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

Searches the titles and descriptions of every page this site publishes.