165 lines
10 KiB
Markdown
165 lines
10 KiB
Markdown
|
|
# Should `informed-decision` hold a §4 catalog row? — answered: **yes**
|
||
|
|
|
||
|
|
**Answers:** `GH-DEC-2026-017` §4, the open item gate-house carries as `GH-WP-0004-T06`
|
||
|
|
**To:** `gate-house` (author), `net-kingdom` (publisher of the catalog)
|
||
|
|
**Standard:** `net-kingdom/canon/standards/` — the security layer model, §3, §4, §9.6, §11
|
||
|
|
**Intake:** `INFD-IN-0006` (closed by the ruling); this document is its second half
|
||
|
|
**Raised by:** `gate-house`, which asked rather than enrolled
|
||
|
|
|
||
|
|
> **Derived-artifact note (§12).** This document restates §3, §4, §9.6 and §11 of the
|
||
|
|
> security layer model and quotes `GH-DEC-2026-017` and `GH-DEC-2026-018`. Derived from
|
||
|
|
> `net-kingdom/canon/standards/security-layer-model_v0.8.md` as published 2026-09-09 (the
|
||
|
|
> **proposed** cut, held by `GH-DEC-2026-019`), from the amendment set
|
||
|
|
> `gate-house/docs/amendments/v0.8-section-11-declaration-amendments.md` v0.1, and from
|
||
|
|
> `gate-house/decisions/decisions.md` as of 2026-09-21. Where they and this differ, they
|
||
|
|
> govern.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 1. The question, as gate-house put it
|
||
|
|
|
||
|
|
> *"Not ruled: whether `informed-decision` should become a §4 row. It holds a ruled
|
||
|
|
> boundary, is PEP-shaped, and sits on the approval path, which is a real argument. Adding
|
||
|
|
> a catalog row is a canon change, and a repository is **asked**, not enrolled — §11's own
|
||
|
|
> rule that a layer stated about a repository by another is not a declaration applies to
|
||
|
|
> catalogue membership at least as strongly."*
|
||
|
|
|
||
|
|
The manner of asking is worth recording before the answer, because it is the thing being
|
||
|
|
tested. gate-house had every argument it needed to add the row and did not add it. That is
|
||
|
|
§11's declaration rule applied against its own author's convenience, which is the same move
|
||
|
|
`access-engine` made when it raised gate-house's undeclared layer against gate-house.
|
||
|
|
|
||
|
|
**Answer: yes.** `informed-decision` asks for a §4 catalog row.
|
||
|
|
|
||
|
|
## 2. Why — and it is not the flattering reason
|
||
|
|
|
||
|
|
The tempting argument is that this repository holds a ruled boundary, is PEP-shaped, sits
|
||
|
|
on the approval path, and that every §4 Staff row with its shape — `ops-warden`,
|
||
|
|
`ops-mason` — is catalogued. That argument is true and it is not the one that decides it,
|
||
|
|
because it is an argument about belonging rather than about a cost anyone bears.
|
||
|
|
|
||
|
|
**The deciding argument is that being outside §4 makes this repository's evidence
|
||
|
|
obligation uncheckable, and that is worse for the estate than for this repository.**
|
||
|
|
|
||
|
|
`GH-DEC-2026-017` §4 is correct that §11 does not bind a repository outside §4, and
|
||
|
|
correct that a run which grades one is over-scoped. Applied here, that means:
|
||
|
|
|
||
|
|
- `layer.yaml` declares `evidence.kind: load-bearing` — presentation evidence is *the only
|
||
|
|
record of what a human was shown before binding*;
|
||
|
|
- §9.6 and §11 make a load-bearing source declare an emission guarantee per event class,
|
||
|
|
which is what makes §9.6 **checkable rather than reviewable**;
|
||
|
|
- and no conformance run may check that here, because there is no row to check.
|
||
|
|
|
||
|
|
So the current state is a repository asserting the strongest evidence property in the
|
||
|
|
model, voluntarily, with nothing in canon able to observe whether it holds. That is the
|
||
|
|
same shape as the defect the amendment round exists to close: a rule a careful implementer
|
||
|
|
can satisfy without doing the thing it exists to require. This repository would rather be
|
||
|
|
gradeable.
|
||
|
|
|
||
|
|
The secondary argument is `L3-independent-evidence-path`, the limit `GH-DEC-2026-012`
|
||
|
|
attached to the presentation claim: *the copy that is evidence MUST NOT be reachable only
|
||
|
|
through the party it is evidence about*. In this component the actor and the source are
|
||
|
|
the same, which is exactly the case where an external check is load-bearing rather than
|
||
|
|
ceremonial. A repository whose architecture rests on being audited independently should be
|
||
|
|
in the catalog that makes independent auditing mechanical.
|
||
|
|
|
||
|
|
## 3. What the row would say
|
||
|
|
|
||
|
|
| Repository | Layer | Role | Evidence source |
|
||
|
|
| --- | --- | --- | --- |
|
||
|
|
| `informed-decision` | `Staff` | `PEP-shaped` | `yes` |
|
||
|
|
|
||
|
|
`Staff` and `PEP-shaped` are ruled — `GH-DEC-2026-017` §3 and `GH-DEC-2026-012` R1 — and
|
||
|
|
match `ops-warden` and `ops-mason` exactly. The third column is A10's, and this repository
|
||
|
|
marks itself `yes` rather than leaving it `—`: it **emits** into the estate's evidence
|
||
|
|
stream, and A10 is explicit that custody is disjoint from emission, so `audit-core`
|
||
|
|
holding the record discharges nothing of this emitter's guarantee.
|
||
|
|
|
||
|
|
**No second row for the presentation claim.** `GH-DEC-2026-012` R2 already settled that:
|
||
|
|
PEP and PIP are shapes a repository has; §4 records the layers it occupies. One row.
|
||
|
|
|
||
|
|
## 4. The obligation this acquires, stated per event class
|
||
|
|
|
||
|
|
A `yes` in the evidence-source column triggers §11's emission-guarantee check. Under A10
|
||
|
|
that guarantee is **per event class** — *"a single repository-level guarantee over a stream
|
||
|
|
containing both a high-volume and a rare class is an average, not a declaration, and will
|
||
|
|
be satisfied by rate monitoring that cannot see the rare event go missing."*
|
||
|
|
|
||
|
|
This repository publishes three classes. The classification is **its own**, which §11
|
||
|
|
requires: *"which class an event falls in, and whether it is rare, is the source's
|
||
|
|
published classification; a conformance run is supplied that inventory and MUST NOT infer
|
||
|
|
it from an event name, payload, or observed rate, or the check becomes circular."*
|
||
|
|
|
||
|
|
| Event class | Kind | Classification | Detection surface required |
|
||
|
|
| --- | --- | --- | --- |
|
||
|
|
| `presentation` | load-bearing | **volume** — one per render | Rate monitoring is permitted for this class, with a positive window and a positive minimum, **plus** reconciliation |
|
||
|
|
| `disposition` | load-bearing | **rare** | Heartbeat **and** reconciliation. Rate monitoring is forbidden for this class |
|
||
|
|
| `stance-application` | load-bearing | **rare** | Heartbeat **and** reconciliation |
|
||
|
|
|
||
|
|
All three are **load-bearing**. None is attributive, so none takes the attributive escape
|
||
|
|
of declaring a trade and stating that completeness is not claimed.
|
||
|
|
|
||
|
|
`disposition` is the class the whole obligation is about. A disposition is the binding act
|
||
|
|
— the moment a named human commits their identity to an act, in the vocabulary
|
||
|
|
`accept` / `decline` / `return` / `escalate`. Dispositions are rare by construction, and a
|
||
|
|
quiet month of them is indistinguishable from suppression by rate alone, which is
|
||
|
|
`approval-engine`'s argument for its own classes and is correct here for the same reason.
|
||
|
|
Classifying `disposition` as volume because it shares a stream with `presentation` is
|
||
|
|
precisely the averaging A10 forbids, and this repository names the three classes separately
|
||
|
|
so that the averaging is not available to it.
|
||
|
|
|
||
|
|
The design already exists at `docs/evidence-path-design.md` §5: reconciliation as the
|
||
|
|
primary form, per class — this repository's own count against `audit-core`'s event count
|
||
|
|
per class, divergence a finding — plus a heartbeat for the low-volume classes.
|
||
|
|
|
||
|
|
## 5. What this repository cannot yet do, said plainly
|
||
|
|
|
||
|
|
**The guarantee is owed and is not yet declarable.** It needs the local transactional
|
||
|
|
outbox (§9.4), a `cadence.yaml` in the form `approval-engine` set as the reference
|
||
|
|
instance, and sender registration with `audit-core`; the cadence depends on
|
||
|
|
`AUDIT-WP-0009` T04/T06, which are open. `docs/evidence-path-design.md` says the cadence
|
||
|
|
is declared and *"will not be described as operating until those land"*, and that stays
|
||
|
|
true here.
|
||
|
|
|
||
|
|
**This is not a reason to delay the row, and this repository asks that it not be treated as
|
||
|
|
one.** A10 already provides the honest shape: *"an unassessed row carries `—` and §11's
|
||
|
|
check reports it as unassessed rather than as conforming."* The row can land now, with the
|
||
|
|
evidence-source marking `yes` and the emission guarantee reported as **owed and not yet
|
||
|
|
declared** — a tracked non-conformance under §11's own four-state table, which is a state
|
||
|
|
the model has and which is more informative than absence. `informed-decision` would rather
|
||
|
|
be in the catalog as a source with an open guarantee than outside it with a load-bearing
|
||
|
|
evidence claim nobody may check.
|
||
|
|
|
||
|
|
If the catalog's authors prefer the row to wait until the guarantee is declarable, that is
|
||
|
|
their call to make and this repository does not contest it. It asks only that the reason be
|
||
|
|
recorded as a sequencing choice and not as a finding that this repository is not a source.
|
||
|
|
|
||
|
|
## 6. What this does not ask for
|
||
|
|
|
||
|
|
- **Not a second PDP, and not a decision surface.** `layer.yaml` declares
|
||
|
|
`decision_surfaces_exposed: none` and §6 is untouched. A row records a layer occupied,
|
||
|
|
never a permission acquired.
|
||
|
|
- **Not a change to §3.** The four-token vocabulary is closed and this repository declares
|
||
|
|
inside it, as ruled. `surface` is not being re-argued here; it is history in `layer.yaml`.
|
||
|
|
- **Not a resolution of the §3.4 question.** `INFD-IN-0007` asks how a deterministic,
|
||
|
|
non-agentic, evidence-holding repository sits in the layer §3.4 defines by
|
||
|
|
non-determinism and agentic capability. The row would make that question sharper, since a
|
||
|
|
catalogued Staff row is measured against §3.4 directly. It is asked, it blocks nothing,
|
||
|
|
and this repository takes `Staff` either way.
|
||
|
|
- **Not enrolment by correspondence.** This document is a declaration in this repository's
|
||
|
|
own voice, which is the only form §11 accepts. It is an answer to a question, and the
|
||
|
|
canon change is `gate-house`'s and `net-kingdom`'s to make or decline.
|
||
|
|
|
||
|
|
## 7. Summary
|
||
|
|
|
||
|
|
1. **Yes** — `informed-decision` asks for a §4 catalog row.
|
||
|
|
2. The row is `Staff` / `PEP-shaped` / evidence source `yes`; one row, no second row for
|
||
|
|
the presentation claim.
|
||
|
|
3. The deciding reason is that a load-bearing evidence claim outside §4 is uncheckable, not
|
||
|
|
that this repository belongs in the company of the rows that are there.
|
||
|
|
4. The emission guarantee is accepted **per event class**: `presentation` (load-bearing,
|
||
|
|
volume), `disposition` (load-bearing, rare), `stance-application` (load-bearing, rare) —
|
||
|
|
the two rare classes requiring heartbeat **and** reconciliation, not either alone.
|
||
|
|
5. The guarantee is **owed and not yet declarable**; the row should land with it marked
|
||
|
|
owed rather than wait for it, and either sequencing is the catalog authors' to choose.
|