v0.6.0: strengthen backup integrity
pipeline / test (push) Has been cancelled
pipeline / build (push) Has been cancelled

This commit is contained in:
Ein Anderssono
2026-06-15 00:34:32 +02:00
parent 0a905758cc
commit 05188e5451
13 changed files with 840 additions and 97 deletions
+18 -1
View File
@@ -20,6 +20,8 @@ It is especially useful when you want to:
- Keep a manifest of already-exported assets.
- Retry transient iCloud failures.
- Verify that files referenced by a manifest exist on disk.
- Detect missing, zero-byte, and size-mismatched manifest files.
- Inspect or clear deduplicated failure records.
- Script Photos exports with stable exit codes.
It is not intended to replace Apple Photos, iCloud Photos, or Time Machine. Think of it as an additional file-based export and backup tool.
@@ -339,6 +341,8 @@ Failed exports are written to:
failures.jsonl
```
Failure records are deduplicated by asset ID. Repeated failures update the existing record and increment the attempt count.
For transient failures, first use retries during normal export:
```bash
@@ -351,6 +355,19 @@ If failures remain, retry later:
./bin/photoscli retry-failed --out ./PhotosBackup
```
Clear successful retry records automatically:
```bash
./bin/photoscli retry-failed --out ./PhotosBackup --clear-on-success
```
List or clear failure records:
```bash
./bin/photoscli failures list --out ./PhotosBackup
./bin/photoscli failures clear --out ./PhotosBackup
```
Typical reasons for failures:
- iCloud asset not currently downloadable.
@@ -374,7 +391,7 @@ Run verification after large backups:
./bin/photoscli verify --out ./PhotosBackup --manifest sqlite
```
Verification checks that manifest entries point to files on disk.
Verification checks that manifest entries point to files on disk. It also reports zero-byte files and size mismatches when the manifest has a recorded size.
It exits with: