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
+29 -1
View File
@@ -18,7 +18,9 @@ For a practical step-by-step manual with recommended backup workflows, recovery
- Dry-run mode for planning large backups.
- Filters for favorites, media type, date, estimated size, and excluded albums.
- Failure tracking with `failures.jsonl` and `retry-failed`.
- Deduplicated failure management with `failures list`, `failures clear`, and `retry-failed --clear-on-success`.
- Verification, reporting, and diff commands for backup integrity.
- Status command for quick backup summaries.
- Script-friendly exit codes and optional JSON summaries.
- 100% test coverage for the Go CLI and parsing layers.
@@ -219,6 +221,26 @@ photoscli retry-failed --out ./backup
This is useful after transient iCloud or network failures.
Use `--clear-on-success` to remove successfully retried assets from `failures.jsonl`.
### `failures`
Lists or clears deduplicated failure records.
```bash
photoscli failures list --out ./backup
photoscli failures clear --out ./backup
```
### `status`
Shows a quick backup summary.
```bash
photoscli status --out ./backup --manifest sqlite
photoscli status --out ./backup --manifest sqlite --json
```
## Export Flags
Common flags for `export` and `backup-all`:
@@ -297,7 +319,7 @@ Logged events include session start/end, completed exports, skipped assets, and
## Failure Tracking
Failed exports are appended to:
Failed exports are deduplicated by asset ID and stored in:
```text
failures.jsonl
@@ -309,6 +331,12 @@ Retry them with:
photoscli retry-failed --out ./backup
```
Clear successful retries automatically:
```bash
photoscli retry-failed --out ./backup --clear-on-success
```
Use `--retry N` during normal exports to handle transient iCloud or network failures automatically.
## Configuration File