The album-bundle path COPIES slskd's completed files into private staging (then on to the library) but never removed slskd's originals, so they piled up in the download folder. (copy, not move, is correct for the torrent/usenet bundle paths — those clients keep seeding — so the shared copier can't just always delete.) Add an opt-in remove_source to copy_audio_files_atomically that deletes each source ONLY after it copies successfully (never on a failed stage), and set it for the Soulseek path only. Torrent/usenet keep their originals. Tests: keeps source by default / removes when requested / keeps on failed copy. |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| album_bundle.py | ||
| base.py | ||
| registry.py | ||
| torrent.py | ||
| types.py | ||
| usenet.py | ||