feat(audit): publish sequenced heartbeat and reconciliation evidence
Assistant: codex Assistant-Model: gpt-6-astra Assistant-Session: 01a06ec5-7e2b-7743-ac08-719e1b0f42e2
This commit is contained in:
parent
fce60099c4
commit
b9349782f4
32 changed files with 839 additions and 111 deletions
|
|
@ -416,8 +416,13 @@ Suggested audit envelope:
|
|||
```yaml
|
||||
request_id: req-...
|
||||
timestamp: ...
|
||||
event_class: audit.allow | audit.deny
|
||||
stream_id: qonto-assistant.audit
|
||||
stream_instance_id: ...
|
||||
stream_sequence: ...
|
||||
actor: agt-... / workload id
|
||||
tenant_id: binky
|
||||
identity_binding: self_asserted | key_cape_jwt
|
||||
capability: list_transactions
|
||||
protocol: rest | mcp
|
||||
decision: allow | deny
|
||||
|
|
@ -426,9 +431,15 @@ policy_version: 1
|
|||
latency_ms: ...
|
||||
qonto_http_status: ...
|
||||
result_count: ...
|
||||
egress_destination: qonto-thirdparty-api
|
||||
# never: Authorization header, API_KEY, OpenBao token, full IBAN by default
|
||||
```
|
||||
|
||||
The load-bearing `audit.deny` class uses the source-owned cadence and
|
||||
reconciliation contract in `specs/audit-emission-cadence.yaml`. Heartbeats
|
||||
carry cumulative and per-window source transition counts; observers compare
|
||||
those counts and per-instance sequence numbers with received records.
|
||||
|
||||
### 4.11 Operational guardrails (v1, not "later if we remember")
|
||||
|
||||
Basic safety and reliability controls belong in Phase 1 because one noisy
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue