fix(library): preserve playlist phantoms on incremental scan and removal #250

Open
yonlu wants to merge 1 commits from fix/246-incremental-scan-phantoms into main
Owner
commit issue
1b9868dd fix(library): preserve playlist phantoms on incremental scan and removal #246

Verification

  • go test ./backend/database/... ./backend/library/...
  • golangci-lint run .

The incremental scan's orphan cleanup and RemoveFromLibrary deleted
audio_files rows without first filling the playlist phantom columns,
so a track removed from the library folder outside YellowJacket (or
removed from the library) became a permanently empty playlist row. Adds
a scoped PreservePlaylistPhantomsForFiles and runs it in the same
transaction as the deletes.

Closes #246

| commit | issue | |---|---| | `1b9868dd` fix(library): preserve playlist phantoms on incremental scan and removal | #246 | ## Verification - `go test ./backend/database/... ./backend/library/...` - `golangci-lint run .` The incremental scan's orphan cleanup and `RemoveFromLibrary` deleted `audio_files` rows without first filling the playlist phantom columns, so a track removed from the library folder outside YellowJacket (or removed from the library) became a permanently empty playlist row. Adds a scoped `PreservePlaylistPhantomsForFiles` and runs it in the same transaction as the deletes. Closes #246
yonlu added 1 commit 2026-09-09 14:23:34 +00:00
fix(library): preserve playlist phantoms on incremental scan and removal
CI / check (push) Skipped
CI / e2e (push) Skipped
CI / check (pull_request) Successful in 3m33s
CI / e2e (pull_request) Successful in 11m12s
1b9868ddd0
The incremental scan's orphan cleanup and RemoveFromLibrary deleted
audio_files rows without first filling the playlist phantom columns, so
a track removed from the library folder outside YellowJacket (or
removed from the library) became a permanently empty playlist row that
nothing could re-link — the same bug #183 fixed on the full-rescan and
retire paths, on the two paths it missed.

Add a scoped PreservePlaylistPhantomsForFiles and run it in the same
transaction as the deletes on both paths.

Closes #246
All checks were successful
CI / check (push) Skipped
Required
CI / e2e (push) Skipped
Required
CI / check (pull_request) Successful in 3m33s
Required
Details
CI / e2e (pull_request) Successful in 11m12s
Required
Details
You are not authorized to merge this pull request.
This pull request can be merged automatically.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin fix/246-incremental-scan-phantoms:fix/246-incremental-scan-phantoms
git checkout fix/246-incremental-scan-phantoms
Sign in to join this conversation.