Incident Management Platform · View 14 of 34 · 4 · Data
Decisions
- Coverage lives in the paging domain as JetStream key-value buckets, written with quorum so a publish is RPO 0, and read locally in every cell. It is rebuildable from the schedule store, but not in the two minutes a page has, which is why it is replicated rather than recomputed.
- The event log is the system of record and the incident record is a projection of it. Paging-side events land first in a 30-day JetStream outbox, so the log can be unavailable for a month without losing a paging event (ADR-08).
- The notification ledger is written by the dispatcher, not by the incident service. The record of what was sent must not depend on the thing it might be evidence against.
Retention
- Incident events and audit: 7 years, immutable, with daily hash-chain anchors in an Object Lock bucket. Notification ledger: 13 months. Raw payloads: 90 days. Projections: none, rebuilt on demand.
Risks
- Projections rebuilt from seven years of events can be slow exactly when the console is being restored. The rebuild is timed quarterly against the 60-minute target, and projections for open incidents are rebuilt first.