feat(admission): founder-signed trust and recovery-attempt admission (WP14 T02, WP15 T05)
All checks were successful
CI Smoke / host-smoke (push) Successful in 1s
CI Smoke / container-smoke (push) Successful in 2s

Reuse the gated-executor approval pattern: ssh-keygen -Y signatures over exact
bytes, verified against a runtime-unwritable allowed_signers anchor with a fixed
namespace per purpose. load_trust now refuses responder trust without a founder
admission; the KeyCape selector preflight gains --admission for one exact,
bounded recovery attempt. WP14 re-pointed to CUST-WP-0082-T06 and split founder
key admission into human-gated T04; WP15 T04 now requires the signed admission.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 809600@bnt-lap001
Assistant-Session: 40ba228f-c8a0-4ec9-bb29-3129951afdc4
This commit is contained in:
tegwick 2026-10-21 00:30:59 +02:00
parent 497040c58c
commit ebd8e49aff
15 changed files with 469 additions and 29 deletions

View file

@ -39,8 +39,12 @@ point, not an identity provider, and not a general secrets API.
- Source now requires independently configured responder trust and a separately
installed Go producer-format verifier on the serving authorization path.
Signatures bind admitted keys to signed evaluator/mode and exact policy
package/version/artifact digest; unsigned responses fail closed. This requires
a reviewed native deployment/key admission under WP14, still outstanding.
package/version/artifact digest; unsigned responses fail closed. The trust
file itself is admitted only by a founder `ssh-keygen -Y` signature over its
exact bytes, checked against a runtime-unwritable `allowed_signers` anchor.
This reuses the gated-executor approval pattern (`docs/founder-admission.md`).
The real key's founder admission and the native rollout are still outstanding
(WP14 T04/T03).
- Resolves a catalog lane by catalog id or `approval.decision_ref`.