feat(demo): scheduled demo-account reset (5c)

A security audit of every mutating endpoint found no isolation gaps — all routes
scope by current_user, admin routes are gated, and the demo account is sandboxed
in its own user_id space (can't reach others' data, escalate, or hit admin
routes). The remaining demo concern is communal pollution of its own shared state,
so add an automatic reset: a new 'demo_reset' scheduler job (admin-tunable
interval, default 12h) reuses the manual reset logic, and no-ops without ever
creating a demo account if none exists. Verified: a triggered run wiped the demo's
video states and re-seeded its sample playlists.
This commit is contained in:
npeter83 2026-06-19 15:25:13 +02:00
parent 7ca28189bb
commit 571f337fdf
6 changed files with 39 additions and 12 deletions

View file

@ -76,7 +76,8 @@
"shorts": "Shorts-Klassifizierung",
"subscriptions": "Abo-Resync",
"playlist_sync": "YouTube-Wiedergabelisten-Sync",
"maintenance": "Wartung + Validierung"
"maintenance": "Wartung + Validierung",
"demo_reset": "Demo-Konto-Reset"
},
"queue": {
"recentPending": "Zu synchronisierende Kanäle",