Environment variables
PUBLIC_MEDIA_BASE_URL (required for thumbnails)
RC_LOGO_URL (optional)
ADMIN_TOKEN exists in the environment type but is not used for auth
Admin access
- Admin routes are not protected in code.
- Enforce Cloudflare Access for
/admin/* and /api/admin/*.
Scheduled repair
- Cron runs every 30 minutes to remove orphaned objects and rebuild indexes.
- Manual repair UI:
/admin/repair → POST /api/admin/repair/orphans.
Failure modes
- Missing
PUBLIC_MEDIA_BASE_URL → thumbnail creation fails; UI falls back to on-demand variants.
- KV index drift → use repair endpoints to rebuild.
- Resize errors →
variant fallback returns original bytes.