# V1 ADR 006: Schedule Snapshot Policy Status: **Accepted; updated to match current app state** Date: 2026-06-26 Last reviewed: 2026-07-07 ## Decision Persist committed diagnostic schedule snapshots only. Snapshots are diagnostic records, not authoritative task state. Snapshot retention is bounded by a `retention_expires_utc` timestamp derived from the snapshot capture time plus 30 days. Repository cleanup deletes snapshots whose retention expiry is before the cleanup instant. Notice acknowledgement is stored separately in `notice_acknowledgements`. The Today read model suppresses acknowledged notices when presenting pending notice state, but acknowledgement does not delete the source snapshot early. ## Consequences * Snapshot rows can remain available for diagnostics until their retention expiry even after all displayed notices have been acknowledged. * Notice acknowledgement is an application-layer read-model concern, not a snapshot lifecycle rule. * Cleanup jobs and tests should target `retention_expires_utc`, not notice acknowledgement status.