Skip to content

I1958 — Evidence has one route per subject, and every panel is joined to its subject

Generate one evidence route per subject from site/data/registry/evidence-subjects.json, as sections of the one evidence template, and join every homepage panel to its subject by its route, failing generation for a subject the index does not have (ADR 0087 decision 9).

BLOCKED wave 4 · p1 · implementation profile · parallel safe

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

Blocked. This issue cannot start until I1955 is done. The status is derived from that, not declared.

Objective

Generate one evidence route per subject from site/data/registry/evidence-subjects.json, as sections of the one evidence template, and join every homepage panel to its subject by its route, failing generation for a subject the index does not have (ADR 0087 decision 9).

Why

The site only joins to the index. Today no panel names a subject, and /evidence/ is one page.

Current state

/evidence/ is a single page whose CI view is the Recorded by CI section of PR #577; panels carry a route and no subject; the tests of commands.json are derived in shell.

Desired state

/evidence/ is a section with a child per subject kind, plus suites, coverage and runs; the Recorded by CI section becomes the runs section; scripts/generate-site-data sets each panel's subject by joining its route to an index key and passes the executable's refusal through; the tests of commands.json are read from the artifact.

Scope

  • scripts/generate-site-data
  • scripts/lib/panel-subjects.jq
  • site/content-src/evidence.md
  • site/content-src/evidence
  • site/templates/evidence.html
  • site/data/nav.toml
  • test/cases
  • docs/CLAIMS.yaml
  • docs/claims
  • .gitattributes

Out of scope

  • Deriving a subject in shell or jq beyond the join
  • The badge, which is I1960's

Dependencies

What waits on this

Acceptance criteria

  • Every subject of the index has a route, and no route exists for a subject the index does not have
  • Every panel carries the subject its route joins to, or an explicit illustration marker, and an unknown subject fails generation with the executable's refusal
  • The Recorded by CI section is folded into the runs section

Validation

  • bash test/run.sh 516_evidence_routes_render_from_the_subject_index
  • bash test/run.sh 517_a_panel_subject_is_joined_from_its_route

Evidence required

  • routes_from_the_index
  • panels_joined_to_subjects

Evidence

None recorded. Every token above needs a command or an artifact behind it before this issue can be completed; narrative is refused.

Risk

It also waits on PR #621 and PR #626, which change the templates it edits.

Timeline

started
—
verified
—
completed
—

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/I1958.yaml. Read it back with majordomus plan show I1958.

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