Background
The current encrypted backup can include image blobs, but building a large backup may hold the SQLite snapshot, encoded images, serialized payload, and encrypted output in memory at the same time.
Scope
- Measure peak memory for representative large image libraries.
- Design a streaming or chunked backup assembly/encryption path.
- Avoid duplicating full image payloads in memory where browser and platform APIs allow it.
- Preserve compatibility with existing backup restore formats or add an explicitly versioned migration.
- Surface cancellation and actionable out-of-memory failures.
Acceptance criteria
- A documented benchmark demonstrates lower peak memory.
- Existing backups remain restorable.
- New backups round-trip database and image content correctly.
- Automated tests cover chunk boundaries, failures, and cancellation.
Background
The current encrypted backup can include image blobs, but building a large backup may hold the SQLite snapshot, encoded images, serialized payload, and encrypted output in memory at the same time.
Scope
Acceptance criteria