Self-hosting
Migrations & ops
Two crons and one migration command carry the whole operational surface.
Migrations
npm run db:deploy applies pending migrations in order and is safe to re-run. On managed platforms it belongs in a pre-deploy hook so a new image never boots against an old schema.
Crons
A monthly quota reset and a nightly purge. npm run cron:check verifies both are scheduled and exits non-zero if either is missing; --fix reasserts them.
