A backup mechanism already exists (scripts/backup.sh / scripts/restore.sh, exercised by the CI "backup-restore (DR round-trip)" job) — it just needs to be scheduled on your host.
One-off backup (do this before deploying any release with a destructive migration, e.g. #393)
./scripts/backup.sh # → backups/brainiac-<stamp>.sql.gz
Schedule daily (keeps the newest 14 by default)
crontab -e
# add:
0 2 * * * cd /path/to/brainiac && ./scripts/backup.sh >> backups/backup.log 2>&1
Restore drill (confirm you can actually recover)
./scripts/restore.sh backups/brainiac-<stamp>.sql.gz # DESTRUCTIVE: overwrites the DB; asks for confirmation
Checklist
Related: SYSTEM.md §16.
🤖 Generated with Claude Code
A backup mechanism already exists (
scripts/backup.sh/scripts/restore.sh, exercised by the CI "backup-restore (DR round-trip)" job) — it just needs to be scheduled on your host.One-off backup (do this before deploying any release with a destructive migration, e.g. #393)
./scripts/backup.sh # → backups/brainiac-<stamp>.sql.gzSchedule daily (keeps the newest 14 by default)
Restore drill (confirm you can actually recover)
Checklist
scripts/backup.shonce; a.sql.gzappears underbackups/Related: SYSTEM.md §16.
🤖 Generated with Claude Code