Retention Expiry Clock
A retention timer that schedules resources for expiry, reports what is due now, and lets you dispose one — with content-hash integrity and an audit note per disposal.
The problem
/ 01When data must be expired on a schedule, you need to register a retain-until or time-to-live against a resource, see which items are due for disposal at any moment, and perform a single one-shot disposal with an audit note — without claiming to be DLP or a legal hold system.
What it does
/ 05Schedules a resource (resourceId, optional resourceType) for expiry via retainUntil or ttlSeconds, with optional policyId and meta.
Returns a scheduleId, expiresAt, contentHash, and initial status (active).
Lists schedules that are due as of a given timestamp (defaults to server now).
Disposes a single schedule one-shot with an optional audit note — status transitions to disposed.
Fetches a full record by schedule ID and lists all schedules.
Private pilot adds
/ pilotPilot-ready: durable retention-expiry store available under NDA with a /v1 API for private pilots. The public studio card runs against /demo (ephemeral).
Who it’s for
/ 03- Data stewards enforcing retention schedules
- Compliance engineers auditing expiry timelines
- Storage operators reclaiming expired capacity
In context
/ 01Complements Consent Receipt Registry (recorded consent lifecycle), Jurisdiction Tag Router (jurisdiction-based routing), and the Dual Control Timer (approval-gated release).
