Skip to content

README-ONT-001: README as a rendered, SHACL-proven, read-only artifact (under ONT-4c #3847) #4465

Closed as not planned

Description

@noahgift

Sub-ticket of #3847 (ONT-4c). This is the README as a derived, read-only artifact: readme.toml (schema paiml-readme/v1) plus fragments are rendered by pv readme render, and pv readme check proves the result against SHACL shapes and falsifiers F-RD-1 to F-RD-10.

Operator, verbatim (2026-09-26): "going forward README is a SHACL ontology with schema and toml crerated READ only and provable". The operator accepted proposal v2 on 2026-09-26. v2 folds in the team review (S1 1–5, S2, S3, exit targets).

Spec: infra/docs/specifications/README-ONT-001.md (to be written from proposal v2).
Hard block: P0 tooling does not start until #3610 is merged. The fix rides #4429.

Phases

  • P0-a: measure the fraction of PRs merged in the last 30 days that change a derive input, for aprender and apr-cookbook, with the command cited. If it is above 20%, the volatile region is merge-queue-only.
  • P0 Tooling, in this order:
    • pv readme render|check with F-RD-1, 3, 4 and 6
    • the extract:readme AST extractor and the base shapes
    • F-RD-7 and F-RD-8 (per-class node counts)
    • the golden corpus
    • the sh:not falsifier
    • Done when all 10 falsifiers have a recorded RED mutation.
  • P1 Import: aprender and apr-cookbook get a manifest and fragments. The body-text diff against today's README is empty, and per-class node baselines are recorded.
  • P2 Correct: count literals become {{claim:id}}, invalid commands are fixed, and the cookbook recipe count is settled by Decision 6.
  • P3 Enforce: readme-gate.yml becomes a needs: job of ci / gate, and the volatile region renders in merge_group. Done at 0 README-caused queue ejections over 14 days.
  • P4 Fleet: the remaining 27 repos, budgeted in repo-days from the measured P1→P3 time. Crate READMEs come from one generator in a single PR. A RED README gate on any repo's main stops the rollout.
  • P5 Retire: delete the bash README scripts and fold readme_contract.rs into the contract.

Exit targets

Gate Target
Count literals in fragments 0
Unresolved commands 0
Personal literals 0
Per-class nodes ≥ P1 baseline, ratchet
Falsifiers with a recorded RED mutation 10/10
Cross-host byte equality (lambda, mini) 100%, 2 runs each
README-caused queue ejections 0 over a 14-day canary
Bash README scripts 0
Repos enforcing 29/29

Activity

  1. added this to the 0.71.0 milestone on Sep 26, 2026
  2. noahgift commented on Oct 12, 2026

    @noahgift
    ContributorAuthor

    park proposal: parked, no pv readme render/check exists on main and the work is hard-blocked on #3610; valid, but out of the current train's budget.

  3. modified the milestones: 0.71.0, backlog on Oct 14, 2026
  4. noahgift commented on Oct 14, 2026

    @noahgift
    ContributorAuthor

    Folded into #5308 as a checklist row (TRIAGE-100, 2026-10-14). Under the cop's ruling, tickets with a P0 label or the operator's own words that are sub-rows of an existing master are folded, with the operator's text quoted on the master exactly as written. Priority and owner carry over on the row.

    Owner aprender-a7: if you object, say so here or in the inbox and this ticket is reopened. Work on it continues as before; a PR for it reopens it.

    Agent: aprender-clerk

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions