You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
SoulSync/core
BoulderBadgeDad 577bba30aa
Playlists: all-owned trigger makes batch dict authoritative + logs when nothing rebuilt
5 days ago
..
artists Complete MusicBrainz watchlist source parity 4 weeks ago
automation Playlists: mirror-update trigger prunes removed tracks (the other half) 5 days ago
blocklist Blocklist Phase 1 (backfill + API + modal): the Blocklist button on the watchlist page 1 week ago
credentials Profiles: review fixes — close two gating gaps + reject whitespace secrets 1 week ago
diagnostics #802: on-demand memory-growth diagnostic (tracemalloc, browser-drivable) 2 weeks ago
discovery #702: make mirrored-playlist cancel/reset/delete idempotent (un-wedge LB weekly sync) 6 days ago
download_engine Add module logger + surface silent exceptions in 7 logger-less files — 12 sites 1 month ago
download_plugins Torrents: fix stall handling on "downloading metadata" + stop orphaning in qbit 6 days ago
downloads Playlists: all-owned trigger makes batch dict authoritative + logs when nothing rebuilt 5 days ago
enrichment Import speed: downloads pause ALL enrichment workers, discovery pauses the contention five 2 weeks ago
exports Library export: export the whole library roster too (corruption's request) 5 days ago
imports Downloads: additively surface each track's real file path (analysis + completed) 5 days ago
library Orphan detector: hard-bail on a mass-orphan flood instead of warn-only 5 days ago
maintenance Add one-off repair for source ids shared across multiple artists 2 weeks ago
matching #845 tests: lift history-path resolver to core/ + seam-test the delete-safety 6 days ago
media_server Server playlist sync: append mode (preserve user-added tracks) 1 month ago
metadata Cache artist album lists across metadata sources 6 days ago
personalized Personalized pipeline: auto-refresh stale snapshots after watchlist scan 1 month ago
playback Player: log SoulSync web-player plays (recently-played + smart-radio recency) 3 weeks ago
playlists Playlists: resolve synthetic mirrored batch refs (youtube_mirrored_<pk>/auto_mirror_<pk>) to PK 5 days ago
radio Player revamp Phase 2: smart radio ranking (play-count + popularity) 3 weeks ago
repair_jobs Orphan detector: hard-bail on a mass-orphan flood instead of warn-only 5 days ago
search Multi-artist tags: Search → Download Now finally knows its metadata source (Netti93) 1 week ago
security Login mode: enforce "every profile has a password" at every write-point (no gaps) 6 days ago
stats Surface silent exceptions across remaining modules — ~70 sites 1 month ago
streaming #809 Navidrome playback: stream via the server's API when the library isn't mounted on disk 1 week ago
sync Sync: append mode actually dedupes — stop re-adding the whole playlist (#823) 1 week ago
text Matcher: bracketed subtitles no longer read as different songs (#825) 1 week ago
torrent_clients Add Aria2 to the torrent client list (Shdjfgatdif's request) 5 days ago
usenet_clients Fix: Usenet bundle stuck at 99%/100% — SAB reports post-processing in History as non-terminal (#721) 3 weeks ago
watchlist Complete MusicBrainz watchlist source parity 4 weeks ago
webui Extract WebUI asset helpers 1 month ago
wishlist Wishlist: manual "add to wishlist" now skips already-owned tracks (#825) 1 week ago
workers Final silent-exception sweep + ruff S110 lint guardrail — ~45 sites 1 month ago
acoustid_client.py AcoustID: report errors honestly instead of masking them as 'Skipped' 2 weeks ago
acoustid_verification.py feat(verification): status vocabulary, DB column, SOULSYNC_VERIFICATION tag 7 days ago
album_consistency.py Surface silent exceptions across remaining modules — ~70 sites 1 month ago
amazon_client.py Fix #759: Amazon enrichment floods when its public proxy is down 2 weeks ago
amazon_download_client.py Amazon download client: write final size==transferred before returning file path 1 month ago
amazon_outage.py Fix #759: Amazon enrichment floods when its public proxy is down 2 weeks ago
amazon_worker.py Enrichment manager: 'process this group first' + refined hero header 2 weeks ago
api_call_tracker.py Wire Amazon Music as a first-class download source 1 month ago
archive_pipeline.py fix(downloads): harden album bundle staging 4 weeks ago
artist_source_detail.py Fix MusicBrainz artist detail showing MBID as name 4 weeks ago
artist_source_lookup.py Fix artist-detail showing wrong artist when a source id is duplicated 2 weeks ago
audiodb_client.py
audiodb_worker.py Tighten artist matching: 0.85 gate + shared uniqueness guard 2 weeks ago
auto_import_worker.py Fix import artist override and verification review 7 days ago
automation_engine.py Automations: run each as its OWNER profile in the background (part 1 of per-profile sync) 7 days ago
connection_detect.py Final silent-exception sweep + ruff S110 lint guardrail — ~45 sites 1 month ago
connection_test.py Add torrent and usenet release staging support 4 weeks ago
database_update_worker.py Run auto-reconcile as a scan phase inside the running window 2 weeks ago
db_integrity.py DB backups: verify integrity + never evict the last good backup 3 weeks ago
debug_info.py Fix Copy Debug Info music_source + surface missing services 1 month ago
deezer_client.py #853 follow-up: don't cache a partial Deezer discography on mid-pagination error 6 days ago
deezer_download_client.py
deezer_worker.py Tighten artist matching: 0.85 gate + shared uniqueness guard 2 weeks ago
discogs_client.py Cache artist album lists across metadata sources 6 days ago
discogs_worker.py Discogs: fix master/release ID collision fetching the wrong album 1 week ago
download_orchestrator.py Fix Usenet settings reload without restart 4 weeks ago
genius_client.py Genius 429 backoff: fail-fast gate instead of napping the import pipeline 2 weeks ago
genius_worker.py Enrichment manager: 'process this group first' + refined hero header 2 weeks ago
genre_filter.py
hifi_client.py Log exception when inferring HiFi manifest ext 4 weeks ago
hydrabase_client.py feat: add explicit badges to discography modal and artist-detail cards 1 month ago
hydrabase_worker.py
image_cache.py Image cache: reject truncated downloads instead of caching broken covers (#750) 3 weeks ago
itunes_client.py Cache artist album lists across metadata sources 6 days ago
itunes_worker.py Full release dates: store + write yyyy-mm-dd end to end (#824 part 2) 1 week ago
jellyfin_client.py Sync: append mode actually dedupes — stop re-adding the whole playlist (#823) 1 week ago
lastfm_client.py
lastfm_worker.py Enrichment manager: 'process this group first' + refined hero header 2 weeks ago
library_reorganize.py #767-2: reorganize finds the right album edition instead of mislabeling singles as deluxe 2 weeks ago
lidarr_download_client.py Surface silent exceptions across remaining modules — ~70 sites 1 month ago
listenbrainz_client.py
listenbrainz_manager.py Auto-Sync: fix LB pipelines stuck on "Refreshing:" for 5+ minutes 3 weeks ago
listening_stats_worker.py Final silent-exception sweep + ruff S110 lint guardrail — ~45 sites 1 month ago
lyrics_client.py Lyrics: add a "Lyrics Filler" maintenance job + lyrics option in the Re-tag tool (Sokhi) 1 week ago
matching_engine.py fix(tidal): honour version field in matching and back off on rate limits 1 week ago
metadata_service.py Add MusicBrainz as a metadata source 4 weeks ago
musicbrainz_client.py MusicBrainz manual search: field-scope the artist in non-strict mode (#754) 2 weeks ago
musicbrainz_search.py Fix: MusicBrainz artist discography capped at 25 releases 3 weeks ago
musicbrainz_service.py Cover art: a numeric difference is a different release — Vol.4 stops wearing Vol.4.5's cover 1 week ago
musicbrainz_worker.py Tighten artist matching: 0.85 gate + shared uniqueness guard 2 weeks ago
navidrome_client.py Navidrome: self-heal the connection instead of latching disconnected (jimmydotcom) 5 days ago
personalized_playlists.py Blocklist Phase 1 (backend): artist/album/track bans enforced at the wishlist chokepoint 1 week ago
plex_client.py Fix #792: 'reconcile' playlist sync mode (edit in place, keep image/description) 2 weeks ago
profile_context.py Automations: run each as its OWNER profile in the background (part 1 of per-profile sync) 7 days ago
prowlarr_client.py feat(settings): add Prowlarr integration as indexer aggregator 4 weeks ago
qobuz_client.py Fetch all Qobuz favorite tracks for discovery 3 weeks ago
qobuz_worker.py Tighten artist matching: 0.85 gate + shared uniqueness guard 2 weeks ago
reorganize_queue.py Reorganize: optional embedded-tag mode (closes #592) 1 month ago
reorganize_runner.py Reorganize: optional embedded-tag mode (closes #592) 1 month ago
repair_worker.py Add Empty Folder Cleaner library-maintenance job (corruption's request) 5 days ago
replaygain.py Add module logger + surface silent exceptions in 7 logger-less files — 12 sites 1 month ago
runtime_state.py Add module logger + surface silent exceptions in 7 logger-less files — 12 sites 1 month ago
seasonal_discovery.py Fix source artist detail navigation from discover modals 4 weeks ago
similar_artists_worker.py Lint: fix ruff B905 (zip strict=) + S110 (try/except/pass) in similar-artists worker + perf endpoint 2 weeks ago
socketio_cors.py
soulid_worker.py Surface silent exceptions in workers + repair jobs — ~30 sites 1 month ago
soulseek_client.py Fix #796: Soulseek album bundle left completed files in slskd download folder 2 weeks ago
soulsync_client.py Surface silent exceptions across remaining modules — ~70 sites 1 month ago
soundcloud_client.py
source_ids.py Source IDs: add canonical registry, adopt at the highest-value sites 3 weeks ago
spotify_client.py Cache artist album lists across metadata sources 6 days ago
spotify_free_metadata.py Spotify Free: close the album-search gap via the artist's discography 1 week ago
spotify_public_api.py SpotipyFree integration confirmed working (236 tracks live); deps + meta tweak 2 weeks ago
spotify_public_scraper.py Diagnostics: route public-fetch logs to soulsync namespace + log HTTP status 2 weeks ago
spotify_token_cache.py Spotify tokens move into the database — daily Docker deauth fixed (wolf39us) 1 week ago
spotify_worker.py Spotify: rename "Spotify Free" → "Spotify (no auth)", default enrichment to it 1 week ago
tag_writer.py feat(verification): status vocabulary, DB column, SOULSYNC_VERIFICATION tag 7 days ago
tidal_client.py Your Albums: selectable wishlist modal + Tidal album resolution 1 month ago
tidal_download_client.py fix(tidal): honour version field in matching and back off on rate limits 1 week ago
tidal_worker.py Tighten artist matching: 0.85 gate + shared uniqueness guard 2 weeks ago
watchlist_scanner.py Watchlist: show WHICH tracks a scan found/added + group Download Origins (#831) 1 week ago
web_scan_manager.py
wishlist_service.py
worker_utils.py Tighten artist matching: 0.85 gate + shared uniqueness guard 2 weeks ago
youtube_client.py YouTube: ship the JS runtime + nightly yt-dlp so streams/music videos work out of the box 2 weeks ago