The audit chain
Every override produces three linked records:execution_fingerprint is the link across all three records. It uniquely identifies the semantic execution (the combination of policy + signals that was evaluated).
Querying the audit chain
Check if an execution was overridden
After an override is approved and the resolution execution completes, the
execution_state in the audit record updates to "completed". The original decision ("manual_review") remains — it is the decision that was authorized by the policy.List all decisions that required override
What the override audit record contains
Theaudit_overrides table stores:
| Column | Description |
|---|---|
execution_id | The executionId from the original execute request |
execution_fingerprint | The semantic hash of the execution |
policy_id / policy_version | Policy that governed the original decision |
schema_version | Policy schema version |
decision | The original decision JSON |
approved_by | Who approved or rejected the override |
resolution_status | "pending" → "approved" or "rejected" |
override_signature | Ed25519 signature of the override authorization |
signature_type | Signing algorithm used |
pending_context | Stored execution context (used to re-execute on approval) |
created_at | When the override request was created |
resolved_at | When the override was resolved |
Querying override lineage via SQL
Constructing an override proof for an auditor
An auditor who wants to verify that an override was properly authorized needs:- The original attestation (from
audit_decisions.attestation) - The override record (
approved_by,approver_role,reason,override_signature) - The resolution execution signature (
audit_overrides.resolution_status+ theoverrideId)
- The original authority verification outcome was produced by the policy engine
- A named, credentialed human authorized the override
- The override authorization is cryptographically signed
Troubleshooting
Override record exists but no resolution execution — The override was recorded but the re-execution failed. Check server logs for[SYS-024] or other errors. Check the audit_verifications table for a verification record matching the execution_fingerprint.
audit_db: false in /health — Override records cannot be stored without Postgres. All override lineage is lost if Postgres is not connected when the override occurs.
Multiple override attempts for the same execution — The server returns 409 on the second attempt. Only one override resolution is allowed per executionId. The first resolution (approved or rejected) is final.