Track the two external dispositions as TEN-WP-0012

TEN-WP-0011 closed correctly: T04 and T06 built everything this repo
owns. What neither could close is the other side — a sender credential
audit-core issues (AUDIT-IN-0002) and a canon edit only net-kingdom may
make (NET-IN-0002). Both intakes were filed outbound, so nothing in this
checkout held them.

Session protocol Step 3 scans workplans/ for open work. With every
workplan finished it found none, and each session re-derived the same two
externally-owned gaps from SCOPE.md prose and the audit-core source
before concluding there was nothing to do. TEN-WP-0012 holds that
conclusion so it is read rather than rediscovered, as a blocked workplan
with two wait tasks — the convention's status for work owed by another
party.

Records for each what would close it, including the decline branch, and
states the two things not to do: no editing net-kingdom canon from here,
and no requesting the audit-core token over the message bus.

No code change; 287 tests pass and ruff is clean.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HHwvAEQfmzLHtrFGhXtVjq

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 823014@bnt-lap001
Assistant-Session: 2a0786b1-efea-4c38-959b-6e86a493f259
This commit is contained in:
tegwick 2026-09-07 13:44:47 +02:00
parent e2059cd66b
commit 7721ec6a31
2 changed files with 114 additions and 3 deletions

View file

@ -91,7 +91,8 @@ Production service, not a bootstrap. Workplans `TEN-WP-0001` through
boundary-contract APIs, the `flex-auth` write authorizer, lifecycle,
guardrails, PostgreSQL as the production store, mutable grouping,
staged-promotion onboarding, and the security-layer conformance surfaces.
No workplan in this repo is currently open.
The only open workplan is `TEN-WP-0012`, which tracks two dispositions
owed by other repos and expects no code change here.
| Surface | Shipped | Notes |
| --- | --- | --- |
@ -107,7 +108,7 @@ No workplan in this repo is currently open.
| Machine-readable `layer.yaml` | yes | `TEN-WP-0011-T01`; check in `scripts/check_layer_conformance.py` |
| Persisted `authorization_decision_id` | yes | `authz_records` plus mutation event payload (`TEN-WP-0011-T02`) |
| Published unreachable-engine stance map | yes | `pep-stance.yaml`, fail-closed, tested equal to shipped behaviour |
| Independent audit-core emission | path shipped, sender pending | Local outbox + POST `/v1/events`; `AUDIT-IN-0002` |
| Independent audit-core emission | path shipped, sender pending | Local outbox + POST `/v1/events`; waiting on `AUDIT-IN-0002` (`TEN-WP-0012-T01`) |
| Bounded event-read interface | yes | `events_for(tenant_id)` only (`TEN-WP-0011-T05`) |
| Claim freshness / input-class lifetime | yes | `pip-claims.yaml` (`TEN-WP-0011-T03`) |
@ -115,7 +116,13 @@ The boundary contract still labels guardrail policy "reserved, not
implemented" and still calls this repo "not a policy enforcement point".
Both sentences are stale: guardrails shipped, and the write path is
PEP-shaped even though this repo is not a PDP. Amendment is a
`net-kingdom` change, requested from `TEN-WP-0011`.
`net-kingdom` change, requested from `TEN-WP-0011` as `NET-IN-0002` and
tracked here as `TEN-WP-0012-T02`.
Those two rows are the only open items in this repo, and neither is ours
to close: one waits on a credential audit-core issues, the other on a
canon edit only `net-kingdom` may make. `TEN-WP-0012` holds both so they
are read rather than re-derived each session.
## Getting Oriented
@ -127,6 +134,7 @@ PEP-shaped even though this repo is not a PDP. Amendment is a
- Layer declaration: `decisions/decisions.md` `TEN-DEC-2026-001`
- Review: `history/2026-08-29-security-layer-intent-scope-review.md`
- Evolution workplan: `workplans/TEN-WP-0011-security-layer-conformance.md`
- External waits: `workplans/TEN-WP-0012-external-conformance-waits.md`
- flex-auth write-authorization integration: `docs/flex-auth-integration.md`
- Guardrail contract: `docs/tenant-guardrail-policy.md`
- Lifecycle contract: `docs/tenant-lifecycle-api.md`