Skip to content

RTO-BACKUP-01 — RTOpacks Database Backup Report

Date: 2026-04-08 Status: Complete (11/12 DBs active, 1 deferred)


Architecture

Two backup components on the UCCA account, writing to ucca-backups R2 bucket:

Component Type Schedule DBs Prefix
ucca-backup Worker 0 3 * * * 3 UCCA + 6 small RTOpacks d1/ and rtopacks/
ucca-backup-large Workflow 0 4 * * * 2 large RTOpacks rtopacks/

Both use the D1 HTTP export API to generate SQL dumps and stream them to R2.


Databases — Active (11)

UCCA account (e5a9830215a8d88961dc6c80a8c7442a) → d1/ prefix

DB Backup Size Token
ops-db 374 KB CF_API_TOKEN
engine-db 159 KB CF_API_TOKEN
mcp-db 1.6 KB CF_API_TOKEN

RTOpacks account (f95d45376ebeeeaf011a4f0ec0fb7b38) → rtopacks/ prefix

DB Backup Size Method Token
rto-ops-db 371 KB Worker RTO_API_TOKEN
rto-workspace-db 155 KB Worker RTO_API_TOKEN
rto-calendar-db 141 KB Worker RTO_API_TOKEN
rto-landscape-db 88 KB Worker RTO_API_TOKEN
rto-licensing-db 25.1 MB Worker RTO_API_TOKEN
rto-micro-db 279 KB Worker RTO_API_TOKEN
rto-radar-db 187.3 MB Workflow RTO_API_TOKEN
rto-abs-db 719.6 MB Workflow RTO_API_TOKEN

Deferred (1)

DB Source Size Reason
rto-nrt-db 2.4 GB D1 export API takes >60 min to generate dump. Exceeded Workflow polling window.

Mitigation: D1 Time Travel provides 30-day point-in-time recovery. Long-term backup strategy to be addressed in a separate session.


R2 Bucket Layout

ucca-backups/
├── d1/
│   └── YYYY-MM-DD/
│       ├── ops-db.sql
│       ├── engine-db.sql
│       └── mcp-db.sql
└── rtopacks/
    └── YYYY-MM-DD/
        ├── rto-ops-db.sql
        ├── rto-workspace-db.sql
        ├── rto-calendar-db.sql
        ├── rto-landscape-db.sql
        ├── rto-licensing-db.sql
        ├── rto-micro-db.sql
        ├── rto-radar-db.sql
        └── rto-abs-db.sql

Retention: 30 days rolling (managed by ucca-backup Worker).


Changes Made

  1. Removed stale rtopacks-db entry (ID 334ac8fb) from ucca-backup — DB no longer exists in UCCA account
  2. Added 6 small RTOpacks DBs to ucca-backup Worker with RTO_API_TOKEN cross-account auth
  3. Created ucca-backup-large Workflow for rto-radar-db and rto-abs-db
  4. Recreated BACKUP_HEARTBEAT KV namespace (86582e393ca2475e9e0f85c262221be3) — original was deleted during Phase 6 cleanup
  5. Updated wrangler.toml with new KV namespace ID

Secrets

Worker Secret Purpose
ucca-backup CF_API_TOKEN UCCA account D1 export
ucca-backup RTO_API_TOKEN RTOpacks account D1 export
ucca-backup-large RTO_API_TOKEN RTOpacks account D1 export