feat: duplicates resolve themselves without Lidarr (M502 #5517)
release / govulncheck (push) Successful in 37s
release / web (push) Successful in 1m13s
release / go (push) Successful in 1m29s
release / integration (push) Successful in 4m46s
release / android (push) Successful in 5m36s
release / Build signed APK (releases and dev) (push) Successful in 5m54s
release / Attach APK to the Release (tag releases only) (push) Skipped
release / Build + push container image (push) Successful in 6m48s
release / Verify release artifacts (tag releases only) (push) Skipped
release / govulncheck (push) Successful in 37s
release / web (push) Successful in 1m13s
release / go (push) Successful in 1m29s
release / integration (push) Successful in 4m46s
release / android (push) Successful in 5m36s
release / Build signed APK (releases and dev) (push) Successful in 5m54s
release / Attach APK to the Release (tag releases only) (push) Skipped
release / Build + push container image (push) Successful in 6m48s
release / Verify release artifacts (tag releases only) (push) Skipped
Lidarr is off, and with it the resolver had stopped merging: it only merged when Lidarr had said which copies it mapped. Minstrel is now the only program writing the library, so the rule is about the copies: - A song held twice on one album: the extra copies merge into the one whose tags fit best (then lossless, larger, older). - Across releases or under another title: when every copy but one is a video rip (held back, or named like one and not marked fine), the rips merge into the one that is not. - Clean copies on different releases are linked as one song, as before. - Anything else waits for the operator. Gone with Lidarr: release switches and their settle window, the unmapped-file read, the rip search, the merge guard and its 409/503, lidarr.Client's release methods, and duplicate_group_members.lidarr_state (migration 0078). The duplicates page drops the per-copy Lidarr badge and the blocked-merge notice; past release changes stay in its history. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -479,10 +479,6 @@ export type AdminDuplicateMember = {
|
||||
added_at: string;
|
||||
like_count: number;
|
||||
play_count: number;
|
||||
// Lidarr's view of the file as of the resolver's last pass (M498): tracked
|
||||
// means Lidarr maps it to a track, so removing it would make Lidarr download
|
||||
// it again. null when Lidarr wasn't asked.
|
||||
lidarr_state: 'tracked' | 'unmapped' | null;
|
||||
disc_number: number | null;
|
||||
track_number: number | null;
|
||||
};
|
||||
|
||||
@@ -120,10 +120,9 @@
|
||||
<span>
|
||||
<span class="text-sm text-text-primary">Resolve duplicates automatically</span>
|
||||
<span class="block text-xs text-text-secondary">
|
||||
Merges copies Lidarr doesn't use into the one it does, and moves a Lidarr album off a
|
||||
release that lists songs twice. A song kept on several releases counts as one song, and
|
||||
video rips are kept out of radio and the mixes. A copy Lidarr uses is never removed.
|
||||
Off, every group waits here for you.
|
||||
Merges a song held twice on one album, and a video rip with a clean copy elsewhere, into
|
||||
the copy that fits best. A song kept on several releases counts as one song, and video
|
||||
rips are kept out of radio and the mixes. Off, every group waits here for you.
|
||||
</span>
|
||||
</span>
|
||||
</label>
|
||||
|
||||
@@ -46,8 +46,6 @@
|
||||
"sweep_in_progress": "A duplicate sweep is already running.",
|
||||
"duplicate_group_not_pending": "That group has already been resolved.",
|
||||
"survivor_not_in_group": "That copy isn't part of this group any more.",
|
||||
"copy_tracked_by_lidarr": "Lidarr uses a copy this would remove, and would download it again. Keep that copy instead.",
|
||||
"lidarr_unavailable": "Lidarr didn't answer, so it isn't safe to remove a copy yet. Try again shortly.",
|
||||
"suspect_track_not_found": "That track isn't flagged any more. Refresh the list.",
|
||||
"invalid_verdict": "That isn't a choice for a flagged track.",
|
||||
"invalid_setting": "That setting is out of range.",
|
||||
|
||||
Reference in New Issue
Block a user