Files
photoanalyzer/delivery_backlog/stories/US06-04-restore.md

25 lines
862 B
Markdown

# US06-04 — Plan and Execute Safe Restores
Epic: [E06](../E06-archive-lifecycle.md)
As a user, I want archived assets restored to collision-free active paths so I can
recover originals without losing identity or previous decisions.
## Acceptance criteria
- Restore preflight requires the correct archive identity, matching bytes, capacity,
safe destination, and no conflicting lease.
- Restore copies, closes, verifies, atomically publishes, and registers an active
occurrence while preserving asset identity and stage history.
- Collisions never overwrite; mismatches become stale/divergent states.
- Restore is journaled, resumable, and idempotent.
## Automated tests
- Tests cover offline media, wrong volume, normal restore, collision, changed archive
bytes, interruption, repeated restart, and preserved decisions.
## Dependencies
- US06-03