PaaS Incident Queue Storage and Retention
Date: 2026-02-17 Scope: WS12-03 context-scoped incident queue persistence Owner: Codex1. Queue Scope
Incident queue is context-scoped and stored at:contexts/<context>/events/incidents.jsonl
- canonical incident payload
- queue key (
dedupe_key|window_start) - first/last seen timestamps
- status
- seen count
2. Retention Defaults
Defaults implemented in code:max_entries:1000max_age:14d- collection scan limit per sync:
200
3. Retention Rules
- Drop entries older than
max_agebylast_seen. - Sort newest-first by
last_seen. - Truncate oldest entries when queue exceeds
max_entries.
4. Upsert Rules
On collector sync:- queue key is
dedupe_key|window_start - same key updates existing row (
seen_count++,last_seenrefresh) - severity can escalate (
info->warning->critical) - metadata is merged with sensitive-field redaction
5. Implementation Reference
tools/si/paas_incident_queue_store.gotools/si/paas_incident_queue_store_test.go
syncPaasIncidentQueueFromCollectors(limit, maxEntries, maxAge)

