Add defensible orphaned audio detection
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
# Orphaned audio detection
|
||||
|
||||
## Problem
|
||||
|
||||
“Not in a crate” does not mean unused. Many DJs keep active tracks in Serato's
|
||||
main library without placing them in a crate. Treating those files as orphans
|
||||
would create dangerous deletion pressure.
|
||||
|
||||
## Design
|
||||
|
||||
Serato Doctor now separates two read-only findings:
|
||||
|
||||
- **Not in crates**: scanned tracks whose normalized filename is absent from all
|
||||
loaded crate references. These may still be ordinary Serato library tracks.
|
||||
- **Possible orphan files**: tracks absent by normalized filename from both
|
||||
loaded crates and database V2.
|
||||
|
||||
When database V2 is unavailable, orphan status is reported as not assessed—not
|
||||
zero. Orphan candidates include preview and Finder controls but no delete or
|
||||
repair action.
|
||||
|
||||
## Edge cases
|
||||
|
||||
- Filename comparison is case- and Unicode-normalized.
|
||||
- A track in several folders may still require duplicate review separately.
|
||||
- Smart-crate materialized references count as crate evidence.
|
||||
- Missing database V2 prevents a defensible orphan conclusion.
|
||||
|
||||
## Tests
|
||||
|
||||
- Tracks known only to database V2 are excluded from orphan candidates.
|
||||
- Tracks in crates are excluded even if absent from database V2.
|
||||
- A track absent from both sources is counted once.
|
||||
- No database produces a not-assessed result.
|
||||
Reference in New Issue
Block a user