Skip to content

Recover DSP deletion blocked by SQLite backup sidecars - #7

Merged
dillonlille merged 1 commit into
mainfrom
fix/dsp-deletion-backup-sidecars
Sep 13, 2026
Merged

Recover DSP deletion blocked by SQLite backup sidecars#7
dillonlille merged 1 commit into
mainfrom
fix/dsp-deletion-backup-sidecars

Conversation

@dillonlille

@dillonlille dillonlille commented Sep 13, 2026

Copy link
Copy Markdown
Owner

Permanent DSP deletion can remain stuck in backup cleanup after a read-only SQLite connection adds an empty WAL and shared-memory file to a retained snapshot. The backup worker also drops the underlying error code, leaving only a generic deletion failure.

Recover only recognized SQLite sidecars added after the snapshot when removing them reproduces the original complete checksum and byte count. Recheck file identity and contents before removal, keep restore validation strict, and preserve safe failure codes across the backup worker boundary. Any changed database, nonempty WAL, unsafe file, or unrelated addition still blocks deletion. Interrupted cleanup remains retryable.

Validation:

  • Core source checks and 143 unit tests passed, including five new recovery and rejection tests.
  • Deletion integration covers real SQLite read-only sidecars, shared-backup preservation, permanent removal, failure reporting, and retry.
  • All 140 integration tests and the Core development build passed.
  • Recovery on private copies of the affected backup folders restored their original manifest checksums; the original backups were left unchanged.
  • The supplementary manual-backup restore test fails with invalid_request on both this branch and unchanged main; the failure is in the existing plugin-state restore call.

No production backups, DSPs, or services have been changed. This is a Core-only fix.

@dillonlille
dillonlille marked this pull request as ready for review September 13, 2026 04:39
@dillonlille
dillonlille merged commit 6779519 into main Sep 13, 2026
1 check passed
@dillonlille
dillonlille deleted the fix/dsp-deletion-backup-sidecars branch September 13, 2026 04:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant