# V1 ADR 005: Export & Backup Boundary Status: **Accepted; updated to match current app state** Date: 2026-06-26 Last reviewed: 2026-07-07 ## Decision * **Backup**: passphrase-encrypted copy of the local SQLite database bytes. Defaults: * source DB: `~/ADHD_Scheduler/scheduler.sqlite` * backup directory: `~/ADHD_Scheduler/backups` * backup filename: `yyyymmdd_hhmm.db.enc` * **Backup cryptography**: AES-256-GCM with PBKDF2-HMAC-SHA256 key derivation, 200,000 iterations, random salt, and random nonce. The encoded file is a JSON envelope containing format metadata, salt, nonce, ciphertext, and MAC. * **Restore**: decrypts a `.db.enc` backup and atomically replaces the target SQLite file. * **Readable export**: JSON and CSV are produced through `ExportController` and export writer implementations. ## Boundary Encrypted backup is the restorable binary preservation path for the SQLite runtime database. JSON and CSV exports are readable user/data-portability outputs and are not the canonical restore format. No open questions remain.