Move files back out of the _duplicates/ quarantine folder to their original location, so a dedupe can be reversed.
Why: builds trust in the dedupe workflow; the quarantine is reversible by design but there's no command for it yet.
Scope
tidysync restore <remote> [--folder ...] [--apply] (report-only by default).
- Read
_duplicates/<original/path> entries and moveto each back to <original/path>.
- Skip/flag if a file already exists at the destination (don't clobber).
- Add a menu option and an offline test (stub rclone).
Code: src/tidysync/dedupe.py, src/tidysync/rclone.py (moveto), cli.py, interactive.py.
Move files back out of the
_duplicates/quarantine folder to their original location, so a dedupe can be reversed.Why: builds trust in the dedupe workflow; the quarantine is reversible by design but there's no command for it yet.
Scope
tidysync restore <remote> [--folder ...] [--apply](report-only by default)._duplicates/<original/path>entries andmovetoeach back to<original/path>.Code:
src/tidysync/dedupe.py,src/tidysync/rclone.py(moveto),cli.py,interactive.py.