From 862cedde9d15d59cc4c6201c69c2dc32b4a0d4f9 Mon Sep 17 00:00:00 2001 From: Broque Thomas <26755000+Nezreka@users.noreply.github.com> Date: Tue, 26 May 2026 15:56:24 -0700 Subject: [PATCH] Auto-Sync manager: exclude Last.fm Radio mirrors from the schedule board MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Last.fm Radio playlists are seed-track-specific similar-tracks snapshots — they don't update on the Last.fm side once generated, so scheduling one for auto-refresh would just re-discover the same 25 tracks every interval. The mirror still exists (visible in the Mirrored tab) so the user can pull the downloads, but it doesn't belong on the schedule board. ``autoSyncCanSchedulePlaylist`` now rejects ``source='lastfm'`` alongside the existing ``file`` + ``beatport`` exclusions. Cosmetic-only on the frontend; backend mirror creation + Mirrored tab listing are unchanged. --- webui/static/auto-sync.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/webui/static/auto-sync.js b/webui/static/auto-sync.js index 380c1736..2dd3b21c 100644 --- a/webui/static/auto-sync.js +++ b/webui/static/auto-sync.js @@ -86,7 +86,16 @@ function autoSyncSourceLabel(source) { } function autoSyncCanSchedulePlaylist(playlist) { - return playlist && !['file', 'beatport'].includes(playlist.source || ''); + if (!playlist) return false; + const src = playlist.source || ''; + // ``file`` + ``beatport`` have no external refresh hook. + // ``lastfm`` is excluded because each Last.fm Radio playlist is a + // seed-track-specific similar-tracks snapshot that doesn't update + // on the Last.fm side — auto-syncing it would just re-discover the + // same 25 tracks every interval. Users mirror Last.fm radios once + // to grab the downloads, then move on; they belong in the + // Mirrored / Sync tab but not the Auto-Sync schedule board. + return !['file', 'beatport', 'lastfm'].includes(src); } function autoSyncIsPipelineAutomation(auto) {