Separate producer checks from attended audit readback
Assistant: codex Assistant-Model: gpt-6-astra Assistant-Session: 01a07ff8-19d0-7820-b4d0-1353833cb7fc
This commit is contained in:
parent
1770a60675
commit
426a0d5829
3 changed files with 99 additions and 41 deletions
|
|
@ -27,7 +27,7 @@ bearer refusal, one own-source reconciliation count and sibling-count refusal.
|
|||
No domain approval/disposition API is called, and no production heartbeat is
|
||||
emitted. Domain-transaction atomicity is not retested by synthetic outbox seeding.
|
||||
|
||||
The attended parent reads the authoritative registry only in memory, verifies
|
||||
The optional attended readback parent reads the authoritative registry only in memory, verifies
|
||||
the two exact sender scopes, selects an unambiguous existing independent
|
||||
read-only full-tenant operator, and retrieves only the two named synthetic
|
||||
events and chain-integrity metadata through a private loopback port-forward.
|
||||
|
|
@ -51,7 +51,7 @@ python3 scripts/native_factory_acceptance.py run \
|
|||
--confirm 'VERIFY CCR-2026-0021 CCR-2026-0022 PRODUCERS'
|
||||
```
|
||||
|
||||
Four preparation/guard/integration tests pass. The integration test runs both
|
||||
Five preparation/guard/integration tests pass. The integration test runs both
|
||||
real source outboxes in the pinned image against actual local Audit Core and
|
||||
preserves exactly two events with an intact chain. All six native objects pass
|
||||
server dry-run. Neither rehearsal result is claimed as native evidence.
|
||||
|
|
@ -62,3 +62,23 @@ bearer. CCRs stay applied until their remaining lifecycle acceptance exists;
|
|||
rotation/revocation must use its separately reviewed owner procedure. Service
|
||||
startup, human binding, native policy/caller admission, attestation/offsite
|
||||
operation and factory execution remain in their existing owner records.
|
||||
|
||||
## Consume existing producer credentials without an operator login
|
||||
|
||||
The first combined attempt failed at OIDC before command handoff; no native
|
||||
job ran. Split normal producer consumption from privileged operator readback.
|
||||
`jobs` uses only Kubernetes metadata and the existing approved Secret references;
|
||||
it never reads OpenBao or obtains an operator token. The audit credential is
|
||||
read solely inside its own source-pinned producer Job. The same packet, exact
|
||||
confirmation, native receiver check and bounded resource/cleanup gates apply.
|
||||
|
||||
Run `jobs` with the same options as `run`. A successful receipt has status
|
||||
`native_sender_checks_passed_pending_independent_readback`. Use a fresh receipt
|
||||
path, and preserve it. After successful jobs, do not use `run` again: repeat
|
||||
sends must not be mistaken for a new first acceptance.
|
||||
|
||||
For independent readback, use `readback` inside a fresh attended envelope with
|
||||
`--producer-receipt <successful-jobs-receipt>` and a new `--receipt`. It verifies
|
||||
the exact packet/run/event identities and reads only those already stored
|
||||
probe records and chain metadata. It creates no Job and emits no new event.
|
||||
The operator login remains required for that separate registry-backed reader.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue