Expanded capabilities
- Record AuditEvent rows with actor + tenant attribution
- Cover meaningful mutations and selected policy-gated reads
- Preserve historical event keys across product versions
- Support worker and user actor types
- Never ‘fix’ history when learning applies
How they learn & improve
AUDIT doesn’t self-learn product behaviour — it improves coverage when registries add events. Learning systems read audit trails; they do not rewrite them.
- Emit registry-backed events on meaningful actions.
- Keep payloads audit-safe (no secrets).
- Expose trails to governance/readiness surfaces for human review.
How they work together
AUDIT is the shared memory of who did what: APPROVAL QUEUE, POLICY, NUNTIUS, and LEARNING all leave trails operators can inspect.
- Approval queueRecords approve/reject decisions.
- Policy engineAttaches rule-id decisions to the trail.
- NUNTIUSRecords messaging mutations when they occur.
- JANUSUses audit-safe evidence in readiness narratives.
Practical benefits
- Prove who approved a sendCompliance can show the human actor — not ‘the agent decided’.
- Learning stays attributableWhen a promotion applies, the apply action is audited separately from the original events.
- Stable event vocabularyHistorical keys remain so reports don’t break after product updates.
Learning and improvement stay human-visible: candidates are RECORD_ONLY until an operator reviews and applies them. Sensitive sends, publishes, and approvals never run silently.