Implement SECRETS-WP-0008 unblocked layer-model obligations
Load pep-stance.yaml as the live unreachable-engine gate and record named stance fields on privileged evidence. Classify evidence, queue load-bearing records in a local outbox, and add heartbeat/drain commands that never sit on a mutation path. Publish proposed SSH-CA and secret-use evidence contracts without adding an OpenBao SSH-CA write. T02 (access-engine decision records) and T06 (no standing credential) stay wait on external endpoints. Assistant: grok Assistant-Session: 01a04cea-cb33-7c63-bad7-c1b0f9f0076b
This commit is contained in:
parent
57f6c4fa65
commit
3cd9955ac9
16 changed files with 1041 additions and 77 deletions
33
layer.yaml
33
layer.yaml
|
|
@ -68,10 +68,13 @@ proposed_capabilities:
|
|||
(ops-warden) does not hold a direct VaultCA write.
|
||||
intended_owner: secrets-engine
|
||||
owner_status: proposed
|
||||
contract: docs/ssh-ca-signing-contract.md
|
||||
blocked_on: >-
|
||||
No engine API exists yet. ops-warden continues to sign through its
|
||||
declared §5.3 gap. This repository accepts the engine surface and
|
||||
declines operational ownership of the SSH access lane.
|
||||
Contract published; ops-warden has not assented. No OpenBao SSH-CA
|
||||
write is added to this CLI until that assent. ops-warden continues
|
||||
to sign through its declared §5.3 gap. This repository accepts the
|
||||
engine surface and declines operational ownership of the SSH access
|
||||
lane.
|
||||
review: "2026-11-28"
|
||||
consequence: >-
|
||||
ops-warden's ssh-ca-signing-write gap remains the production path.
|
||||
|
|
@ -83,9 +86,11 @@ proposed_capabilities:
|
|||
exposed as an engine surface for kings-guard secret-abuse posture.
|
||||
intended_owner: secrets-engine
|
||||
owner_status: proposed
|
||||
contract: docs/secret-use-evidence-contract.md
|
||||
blocked_on: >-
|
||||
Local JSONL plus best-effort State Hub notes exist; they are not an
|
||||
engine API and they are not audit-core. Completeness is not claimed.
|
||||
Contract published; kings-guard has not assented. Local JSONL, the
|
||||
load-bearing outbox, and `route`/`audit` are not this observation
|
||||
API. Completeness is not claimed.
|
||||
review: "2026-11-28"
|
||||
consequence: >-
|
||||
kings-guard secret-abuse posture stays fixture-driven.
|
||||
|
|
@ -130,15 +135,29 @@ non_tooling_clients:
|
|||
preflight only and is deliberately not a write into OpenBao. Wiring it
|
||||
as OpenBao JWT login remains blocked on the platform-owned role.
|
||||
|
||||
- id: audit-core-outbox-drain
|
||||
target: audit-core
|
||||
layer: engine
|
||||
modules:
|
||||
- src/secrets_engine/evidence.py
|
||||
operation: "Optional POST /v1/events from secrets-engine evidence drain"
|
||||
write: true
|
||||
note: >-
|
||||
Engine-to-engine emit. Never on the mutation path. Empty URL skips
|
||||
delivery and leaves the local outbox in place. Sender binding in
|
||||
audit-core is not yet admitted.
|
||||
|
||||
# §9.6 — what this repository may claim about evidence it writes today.
|
||||
evidence_bound:
|
||||
kind: attributive
|
||||
classification: evidence-classification.yaml
|
||||
proves:
|
||||
- local JSONL records that were written were not rewritten by this engine
|
||||
- load-bearing records queued in evidence_dir/outbox/ were written
|
||||
does_not_prove:
|
||||
- that a record was ever sent to audit-core
|
||||
- absence of a record as evidence of non-occurrence
|
||||
- completeness of the trail
|
||||
destination_today: "local JSONL plus best-effort State Hub progress notes"
|
||||
destination_today: "local JSONL; load-bearing also queued locally; attributive State Hub notes"
|
||||
intended_destination: audit-core
|
||||
completeness_claimed: false
|
||||
no_control_branches_on_presence: true
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue