25 lines
862 B
Markdown
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
|