import { PageHeader } from '@/components/shared/page-header'; import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card'; export default function BackupManagementPage() { return (
PostgreSQL: snapshotted by the platform’s nightly{' '}
pg_dump job. Retention is set at the infrastructure layer (see{' '}
docs/operations/ if a runbook exists). Restores are manual.
Object storage: when{' '}
system_settings.storage_backend = ‘s3’, the bucket is
versioned by the provider. When the filesystem backend is in use, the host’s
snapshot policy is the only safety net — switch to s3 before relying on point-in-time
recovery.
Redis / queue state: ephemeral. Failed jobs sit on the{' '}
removeOnFail retention window (7 days) and then disappear. Anything
durable belongs in PostgreSQL.
Until this lands, treat ops/devops as the source of truth for backup state.