Summary #
- Add
playlist.Service(Preview,Import,OnScan,List,Get,Delete,ReadCover) to orchestrate playlist preview/import, stage missing Qobuz releases on the user download queue, maintain in-memory pending playlists until the download queue drains, and write per-user M3U files and sidecar.jpgcovers once settled. - Add
playlist.ParsePlaylistKeyand key the preview cache by canonical resource ID (spotify:<id>/listenbrainz:<uuid>) soPreviewfollowed byImportreuses the resolved playlist without re-querying MusicBrainz or Qobuz. - Update
queue.UserQueueto invokeonCompleteonce when the download queue drains rather than after every individual release download, and allow re-staging terminal (StatusFailed/StatusDone) items.