Waits attach to any record, not just findings

Adopting a rule is nobody's finding; neither is registering a canon kind
or publishing a document. Each obligation that lived outside the
mechanism was invisible to it. RISK-WP-0001 now carries both of its
custodian waits, and the escalation-rule one has the register's most
uncomfortable default pointed inward: unadopted by 2026-09-17 means
recorded as de facto in force but unratified, said on the face of every
escalation sent under it. A draft that quietly governs is exactly what
this register exists to notice.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
tegwick 2026-08-20 23:18:52 +02:00
parent 9a22a2adc5
commit 3a0ba5d427
6 changed files with 54 additions and 8 deletions

View file

@ -10,7 +10,7 @@
| --- | --- | --- | --- | --- |
| workplan | RISK-WP-0001 | active | — | workplans/RISK-WP-0001-make-the-register-decidable.md |
| workplan | RISK-WP-0002 | active | — | workplans/RISK-WP-0002-publication-handover.md |
| workplan | RISK-WP-0003 | active | — | workplans/RISK-WP-0003-regulatory-intake.md |
| workplan | RISK-WP-0003 | blocked | — | workplans/RISK-WP-0003-regulatory-intake.md |
| workplan | RISK-WP-0004 | finished | — | workplans/RISK-WP-0004-run-the-register.md |
| task | RISK-WP-0001-T01 | done | — | workplans/RISK-WP-0001-make-the-register-decidable.md |
| task | RISK-WP-0001-T02 | done | — | workplans/RISK-WP-0001-make-the-register-decidable.md |
@ -23,10 +23,10 @@
| task | RISK-WP-0002-T01 | progress | — | workplans/RISK-WP-0002-publication-handover.md |
| task | RISK-WP-0002-T02 | done | — | workplans/RISK-WP-0002-publication-handover.md |
| task | RISK-WP-0002-T03 | done | — | workplans/RISK-WP-0002-publication-handover.md |
| task | RISK-WP-0003-T01 | todo | — | workplans/RISK-WP-0003-regulatory-intake.md |
| task | RISK-WP-0003-T02 | todo | — | workplans/RISK-WP-0003-regulatory-intake.md |
| task | RISK-WP-0003-T03 | todo | — | workplans/RISK-WP-0003-regulatory-intake.md |
| task | RISK-WP-0003-T04 | todo | — | workplans/RISK-WP-0003-regulatory-intake.md |
| task | RISK-WP-0003-T01 | wait | — | workplans/RISK-WP-0003-regulatory-intake.md |
| task | RISK-WP-0003-T02 | done | — | workplans/RISK-WP-0003-regulatory-intake.md |
| task | RISK-WP-0003-T03 | done | — | workplans/RISK-WP-0003-regulatory-intake.md |
| task | RISK-WP-0003-T04 | done | — | workplans/RISK-WP-0003-regulatory-intake.md |
| task | RISK-WP-0004-T01 | done | — | workplans/RISK-WP-0004-run-the-register.md |
| task | RISK-WP-0004-T02 | done | — | workplans/RISK-WP-0004-run-the-register.md |
| task | RISK-WP-0004-T03 | done | — | workplans/RISK-WP-0004-run-the-register.md |

View file

@ -112,6 +112,25 @@ So the waiting list is built from **every** finding, not from the watched ones.
A closed record with an open obligation is precisely the thing that goes quiet,
because nothing is prompting anyone to look at it any more.
## A wait is not a findings-only idea
Adopting a rule is nobody's finding. Registering a canon kind is nobody's
finding. Publishing a document is nobody's finding. All three are obligations
someone owes, and each one that lived outside the mechanism was invisible to it.
So waits attach to **any** record this repo keeps — findings, regulatory
records, workplans — and `make check` reports them together. `RISK-WP-0001`
carries two: the escalation rule that is producing decisions while still
`status: proposed`, and the canon question about what kind of thing a finding
is.
The first of those has the most uncomfortable default in the register, and it
points inward: **if the rule is not adopted by 2026-09-17, it is recorded as de
facto in force but unratified, and every escalation sent under it says so on
its face.** That is worse than either adopting or rejecting it, which is the
point — a draft that quietly governs is the thing this register was built to
notice.
## Where the waits are visible
`make check` reports every open wait with its age, its owner and its default

View file

@ -124,8 +124,9 @@ def main() -> int:
# Waits: typed, dated, and defaulted (docs/method/dependencies.md).
waiting, due_defaults, deep = [], [], []
# A closed finding can still owe something — RISK-F-0001 is `fixed` and
# still waiting on its publication entry. Waits outlive statuses.
with_waits = [f for f in lib.findings() if f.get("waiting_on")]
# still waiting on its publication entry. Waits outlive statuses, and they
# are not a findings-only idea: adopting a rule is nobody's finding.
with_waits = lib.records_with_waits()
waiting_ids = {f["id"] for f in with_waits}
for f in with_waits:
for w in (f.get("waiting_on") or []):

View file

@ -86,6 +86,19 @@ def regulatory() -> list[dict]:
key=lambda r: r.get("id", ""))
def workplans() -> list[dict]:
"""Workplans carry waits too — adoption of a rule is nobody's finding."""
d = REPO / "workplans"
if not d.exists():
return []
return sorted((load(p) for p in d.glob("*.md")), key=lambda w: w.get("id", ""))
def records_with_waits() -> list[dict]:
"""Every record that owes or is owed something, whatever kind it is."""
return [r for r in findings() + regulatory() + workplans() if r.get("waiting_on")]
def notes() -> list[dict]:
if not NOTES.exists():
return []

View file

@ -8,7 +8,20 @@ status: active
owner: the-custodian
topic_slug: risk-nexus
created: "2026-08-19"
updated: "2026-08-19"
updated: "2026-08-20"
waiting_on:
- who: the-custodian
what: "adopt docs/method/escalation.md, which is producing decisions while still status: proposed"
since: "2026-08-19"
would_change: "the rule stops being a draft that looks like coverage; the spend thresholds become the operator's numbers rather than ours"
default: "recorded as de facto in force but unratified, and every escalation sent under it says so on its face"
default_at: "2026-09-17"
- who: the-custodian
what: "register finding / note / regulatory-record as canon work-record kinds, or rule that the register is a different ontology"
since: "2026-08-20"
would_change: "C-31 stops being a standing warning; the estate's work-record backbone gains four species it currently cannot name"
default: "C-31 documented as expected noise for this repo, and the register stops treating it as a gap it can close"
default_at: "2026-09-17"
---
# RISK-WP-0001 — make the register decidable