Skip to content

audit

Exposes the framework’s event store as a paginated, filterable audit log via the audit:query:list handler (accessible to Admin and SystemAdmin roles). No separate table or projection — the event store is the audit trail by construction: every entity write already records who, when, what entity, and the event payload with PII stripped. Filter by aggregateType, aggregateId, eventType, userId, or time range. Also records audit:event:escape-hatch-used whenever a handler uses one of the framework’s escape hatches (unsafeRaw, acknowledgeCrossTenant, db.global() writes, or a granted identity switch).

What this feature needs to run (Requires).

flowchart TB
  n_audit["audit"]
  subgraph how_reqs["Requires"]
    n_tenant["tenant"]
  end
  n_tenant --> n_audit
  • Requires: tenant
  • Activation: always on (not toggleable)