Skip to content

Ledger

Observed:

  • node harness/check.mjs reports 13 passed · 0 warnings · 0 failed.
  • harness/serve.mjs is operational on loopback 127.0.0.1:3030, /healthz returns a JSON body with gates: 12 reflecting the snapshot.
  • Citations check resolves 67 citations; no broken citations.
  • Seeded violations: 10/10 caught.

Derived:

  • The gate count is 13 because the workers check is included; the snapshot’s gates field is 12 because health.mjs filters out the self‑referential status check.

Artifacts:

  • The wave evidence ledger lives in the separate harness-rescue workspace outside this checkout (not a repo file).
  • Changed files in this wave: docs/ops/publish-checklist.md, docs/ledger.md

Observed:

  • node harness/check.mjs reports 11 passed · 4 warnings · 0 failed on a tree whose snapshots are 25.8h old; the new ledger check warns at 24h and fails at 72h, and the first live run names both status.json and gate-results.json.
  • node --test harness/check.test.mjs reports 38/38 passing, including eight ledger cases (fresh, warn, hard-bound fail, waiver, waiver scope, invalid waivers, undatable snapshots, inverted bounds, registry integration).
  • Waivers live in harness/ledger-waivers.json and expire; an expired waiver, an undeclared file, a short reason or an unknown key fails the gate.

Derived:

  • The frontier needs no freshness field: it is derived from the ticket files on every run. The observable frontier count rides in status.json, so the new gate covers it through that snapshot.
  • An absent snapshot stays a warning because absence is the owning check’s verdict (status fails on a missing status.json, orchestration warns on a missing gate record). Freshness judges age, not existence.

Artifacts:

  • harness/checks/ledger.mjs, docs/freshness.md, harness/ledger-waivers.json, plus the registry and test changes.