Governance Audit · Field Anatomy
What a governance decision records
Every AI-assisted access leaves a durable record. It is structured to answer the same six questions — readable for the customer, dependable for a post-incident analysis, and for the architect a reflection of clear, layered control.
Two real examples
Record as JSON — identifiers shortened
{
"event": "kernel.mediated.decision",
"timestamp": "2026-07-29T07:46:48.857366534Z",
"level": "audit",
"owner_sub_pseudo": "hmac:d434…",
"admin_bypass": false,
"retention_class": "critical",
"operation_id": "op-0aa1b9…-185",
"step_seq": 1,
"details": {
"op": "call_llm",
"verdict": "admitted",
"provider": "local",
"policy_engine_version": "kernelabi:7",
"cumulative_class": "KRITIS-bound",
"cumulative_layer": 4,
"cumulative_zone": "KRITIS-intern",
"decisive_rules": [
"capability_op_authority", "abi_known_op", "step_budget",
"resource_cost_validation", "resource_budget_tokens",
"resource_budget_retrieval_docs", "resource_budget_recall_docs",
"resource_budget_crossing_calls", "resource_budget_payload_bytes",
"label_ceiling_layer", "label_ceiling_class", "label_ceiling_zone"
]
}
}
Record as JSON — identifiers shortened
{
"event": "authz.denied",
"timestamp": "2026-07-29T14:38:25.26110952Z",
"level": "audit",
"owner_sub_pseudo": "hmac:8a2a…",
"admin_bypass": false,
"retention_class": "critical",
"method": "POST",
"path": "/api/projects/devops/query",
"status": 403,
"project": "devops",
"trace_id": "c69b1701…",
"details": {
"outcome": "denied"
}
}
Both are unchanged from the system — one allowed and one blocked access, both by regular users (no admin privileges), both durably recorded.
Six questions every record answers
The same fields — three perspectives
Who acted?
The actor as a pseudonymised identifier — no plain-text name, but resolvable by authorised parties. admin_bypass says whether it was a regular access or a special privilege.
What was done or attempted?
The kind of decision and the concrete operation. event distinguishes an AI operation mediated by the governance kernel from a request checked at the access layer.
Allowed or blocked?
The outcome — clear and in both directions. For a review, the blocked decisions are the most revealing: they prove the control takes effect.
Which data were affected?
The protection classification or the affected project/mandate. An analyst sees at once whether an operation touched sensitive data and which zone it stayed in.
By which rule?
The decisive checks and the version that decided. An admission lists the rules passed; a kernel denial lists the one violated. Honestly: the access 403 records the denial but does not store the rule verbatim.
When — and how provable?
The time and a correlation anchor. These are exactly the IDs an incident analysis needs to reconstruct the whole sequence from individual records.
What the structure reveals
Three properties — straight from the fields
- Complete. Allowed and blocked are witnessed alike, across both control layers — nothing permitted stays invisible, nothing blocked slips through.
- Explicit. Every decision names its decisive rule and its version — governance as traceable code, no black box.
- Provable. The record is written before the effect, pseudonymous yet linkable and tamper-evident.
So it shows not only what happened — but also why, and how it can be verified.
The fields shown here are the ones essential for the customer, the architect and post-incident analysis.
A record also carries technical storage details (among them the dedup key
<operation_id>:<step_seq>:<event>, which makes a double write idempotent).
The identifiers (actor pseudonym, operation and trace ID) are shortened on this public page; the full
values — essential for reconstructing an incident analysis — are available only in the internal,
signed-in view (/admin/gdr/).