Media expiry: auto-remove inactive content from S3 #13

Open
opened 2026-05-05 00:18:39 +10:00 by unkinben · 0 comments
Owner

Remove media files from S3 after a configurable period of inactivity. Rules: movies removed after 3 months with no play activity; TV seasons removed together (one season at a time, not individual episodes); configurable per-item or per-collection override. Requires: expiry_policy field on media items (retention_days, nullable = never expire); a scheduled job (cron or NATS timer) that queries items with last_played_at older than threshold; a /catalogue/expiring-soon endpoint listing items within N days of removal; admin confirmation step before actual deletion (soft-delete flag + S3 purge). Should respect user_media_state last_position_at as 'last activity'.

Remove media files from S3 after a configurable period of inactivity. Rules: movies removed after 3 months with no play activity; TV seasons removed together (one season at a time, not individual episodes); configurable per-item or per-collection override. Requires: expiry_policy field on media items (retention_days, nullable = never expire); a scheduled job (cron or NATS timer) that queries items with last_played_at older than threshold; a /catalogue/expiring-soon endpoint listing items within N days of removal; admin confirmation step before actual deletion (soft-delete flag + S3 purge). Should respect user_media_state last_position_at as 'last activity'.
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: unkin/streamstack#13