Files
serato-doctor/docs/design/backup-recovery-center.md
T
2026-07-01 15:34:58 -07:00

1.1 KiB

Backup recovery center

Problem

An immediate undo button is not enough. A DJ may restart Serato Doctor, notice an issue later, or need to understand how much disk space safety snapshots use.

Architecture

The recovery center reads the existing JSON manifests beneath _Serato_/.serato-doctor-backups/. It reports creation time, selected keeper, affected paths, restore status, and snapshot size. Invalid or incomplete backup folders are ignored rather than presented as restorable.

Restore remains conservative: it only replaces a symbolic-link alias and refuses to overwrite a real file. A successful restore records its timestamp in the manifest so the UI cannot accidentally offer the same rollback twice.

Edge cases

  • No backup directory is treated as an empty history.
  • Malformed manifests do not prevent valid backups from loading.
  • Restored snapshots remain visible for audit purposes and disk accounting.
  • Backups can only be restored through the Serato library that owns them.

Tests

  • Backup history reports size and ready status.
  • Restore changes the persistent status to restored.
  • Static recovery assets are included in the package.