Skip to content

Backup & Recovery Runbook — Personal Training OS

Artifact: Phase 6 (Release) · Owner: Primary User · Serves: NFR-BKP-001 · Date: 2026-07-05

A runbook is an operational procedure someone can follow under pressure without prior context. This one is grounded in what TC-19 actually proved about Notion export/import (not assumptions).

1. Recovery objectives (what "good enough" means)

Term Target Rationale
RPO (Recovery Point Objective — max acceptable data loss) ~1 month Backups are manual; a monthly export means at most ~1 month of logs to re-enter. Acceptable for personal use.
RTO (Recovery Time Objective — time to be usable again) ~1 day Re-import is minutes; rebuilding inline views by hand is the slow part (see §4 caveat).

2. Layers of protection (fastest first)

  1. Notion trash / page history — first line of defense. Notion Business retains page edit history and deleted pages in Trash (~30 days). For "I broke one thing," restore here — no export needed.
  2. Manual export backup — for whole-workspace loss, account issues, or point-in-time archives (this runbook).

3. Backup procedure (monthly + before any big structural change)

  1. Open the 🏋️ Personal Training OS page → ••• (top-right) → Export.
  2. Settings (proven in TC-19): Export format = Markdown & CSV · Include subpages = Yes · Create folders for subpages = Yes.
  3. Save the .zip. Store two copies — local (e.g. Documents/ptos-backups/YYYY-MM-DD.zip) and one off-machine (cloud drive) so a disk failure isn't a total loss (3-2-1 backup thinking).
  4. Log it in §5.

4. Restore procedure

  1. In Notion: at the target location, ••• → ImportMarkdown & CSV → select the backup .zip.
  2. Notion recreates each database from its CSV (with rows) and the home page content.
  3. ⚠️ Caveat (defect D-07, accepted): inline views (Calendar, Hockey board, By-Type chart) and the dashboard layout are not restored — only the underlying data and links. Rebuilding views is manual. Data is safe; presentation must be reassembled. Budget the RTO for this.
  4. Spot-check after restore: Training Sessions row count, Running Shoes Total Miles, People relations intact.

5. Backup log

Date File Location(s) Verified restore?
2026-07-05 Notion export .zip (Markdown & CSV, incl. subpages) Local ✅ Yes — re-imported during TC-19; data + DBs restored (views not, per D-07)

Next backup due: ~2026-08-05 (monthly RPO) or before any big structural change.

6. Improvement backlog (future)

  • Automate export via the Notion API on a schedule (would move RPO from ~1 month toward days) — a candidate once the automation phase lands. Pairs with the deferred integration work.