Aevum Event Schema v1¶
The machine-readable JSON Schema is at
spec/aevum-event-v1.json.
The schema defines the structure of every AuditEvent as returned by
Engine.get_ledger_entries(). See the
Signing Specification for verification procedures.
Field summary¶
See the JSON Schema for full constraints. Key fields:
| Field | Type | Description |
|---|---|---|
| event_id | string | UUID v7 (globally unique, time-ordered) |
| episode_id | string | Groups events into a logical workflow episode |
| sequence | integer | Chain position (1-based); always 1 for session.start |
| event_type | string | Dotted namespace (e.g. session.start, ingest.accepted) |
| actor | string | Who caused this event (e.g. aevum-core, agent) |
| system_time | integer | HLC nanoseconds — use for causal ordering |
| valid_from | string | Wall-clock ISO 8601 timestamp |
| valid_to | string|null | Validity end timestamp; null for point-in-time events |
| causation_id | string|null | audit_id of the causing event |
| correlation_id | string|null | Deployment-wide correlation token |
| trace_id | string|null | OTel W3C trace ID |
| span_id | string|null | OTel W3C span ID |
| prior_hash | string | SHA3-256 of previous event's signing fields |
| payload_hash | string | SHA3-256 of payload (JCS-canonical) |
| signature | string | Ed25519 over SHA3-256(signing fields), base64url |
| signer_key_id | string | Signing key identifier |
| schema_version | string | Always "1.0" |
| payload | object | Event-specific structured data |
| audit_id | string | urn:aevum:audit:{event_id} |
Event types¶
| event_type | Description |
|---|---|
session.start |
Kernel startup; always sequence 1 |
ingest.accepted |
Data ingested through the governed membrane |
ingest.rejected |
Ingest denied by policy or consent |
query.accepted |
Graph traversal executed |
review.created |
Review checkpoint created |
commit.accepted |
Manual commit appended |
replay.started |
Replay of a past decision begun |
capture.gap |
Out-of-band capture surface call declared |
session.start payload¶
key_provenance values: in-process, external, vault-transit, aws-kms, pkcs11.
capture.gap payload¶
gap_type values: llm, mcp, tool, custom.
reason and gap_type are required; model_hint is optional.