..
artists
Complete MusicBrainz watchlist source parity
1 month ago
automation
Merge pull request #780 from kekkokk/feature/organize-by-playlist-library
2 weeks ago
blocklist
Blocklist Phase 1 (backfill + API + modal): the Blocklist button on the watchlist page
2 weeks 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)
1 week ago
download_engine
Add module logger + surface silent exceptions in 7 logger-less files — 12 sites
1 month ago
download_plugins
Torrents: stalled-torrent handling — abandon a dead magnet instead of holding a worker 6h (noldevin)
2 weeks ago
downloads
resolve merge conflict in style.css
1 week ago
enrichment
Import speed: downloads pause ALL enrichment workers, discovery pauses the contention five
2 weeks ago
imports
Use app confirm modal for verification review actions
1 week ago
library
Artist Sync: guard stale-removal against an unreachable mount + gate it admin-only
1 week 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
1 week ago
media_server
Server playlist sync: append mode (preserve user-added tracks)
1 month ago
metadata
Profiles: per-profile Spotify builds for own-app creds OR a token cache
1 week 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
Fix: auto-sync capped public Spotify playlists at 100 tracks ( #838 )
1 week ago
radio
Player revamp Phase 2: smart radio ranking (play-count + popularity)
3 weeks ago
repair_jobs
#704 : add "Relocate" fix for AcoustID mismatches — retag + restage for re-import
1 week ago
search
Multi-artist tags: Search → Download Now finally knows its metadata source (Netti93)
1 week ago
security
Login recovery (DB + backend): security question to reset a forgotten password
1 week 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
2 weeks 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
Fix #790 : torrent client URL without http:// scheme fails to connect
2 weeks 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
1 month ago
webui
Extract WebUI asset helpers
1 month ago
wishlist
Wishlist: manual "add to wishlist" now skips already-owned tracks ( #825 )
2 weeks 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'
3 weeks ago
acoustid_verification.py
feat(verification): status vocabulary, DB column, SOULSYNC_VERIFICATION tag
1 week 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
3 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
3 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
1 month ago
artist_source_detail.py
Fix MusicBrainz artist detail showing MBID as name
1 month ago
artist_source_lookup.py
Fix artist-detail showing wrong artist when a source id is duplicated
2 weeks ago
audiodb_client.py
Add API Rate Monitor dashboard with real-time speedometer gauges
3 months ago
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
1 week ago
automation_engine.py
Automations: run each as its OWNER profile in the background (part 1 of per-profile sync)
1 week 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
Fix Deezer contributors tagging silently dropping for cache-polluted tracks
1 month ago
deezer_download_client.py
Surface silent exceptions in metadata clients — 37 sites
1 month ago
deezer_worker.py
Tighten artist matching: 0.85 gate + shared uniqueness guard
2 weeks ago
discogs_client.py
Discogs: fix master/release ID collision fetching the wrong album
1 week 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
Expand default genre whitelist from 223 to 272 genres
2 months ago
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
Improve graceful shutdown and rollback safety
2 months ago
image_cache.py
Image cache: reject truncated downloads instead of caching broken covers ( #750 )
3 weeks ago
itunes_client.py
feat: add explicit badges to discography modal and artist-detail cards
1 month ago
itunes_worker.py
Full release dates: store + write yyyy-mm-dd end to end ( #824 part 2)
2 weeks ago
jellyfin_client.py
Sync: append mode actually dedupes — stop re-adding the whole playlist ( #823 )
1 week ago
lastfm_client.py
Add Last.fm Track Radio to Discover page
2 months ago
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
Remove emojis from all Python log and print statements
2 months ago
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)
2 weeks ago
matching_engine.py
fix(tidal): honour version field in matching and back off on rate limits
2 weeks ago
metadata_service.py
Add MusicBrainz as a metadata source
1 month ago
musicbrainz_client.py
MusicBrainz manual search: field-scope the artist in non-strict mode ( #754 )
3 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
2 weeks ago
musicbrainz_worker.py
Tighten artist matching: 0.85 gate + shared uniqueness guard
2 weeks ago
navidrome_client.py
Sync: append mode actually dedupes — stop re-adding the whole playlist ( #823 )
1 week ago
personalized_playlists.py
Blocklist Phase 1 (backend): artist/album/track bans enforced at the wishlist chokepoint
2 weeks 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)
1 week ago
prowlarr_client.py
feat(settings): add Prowlarr integration as indexer aggregator
1 month ago
qobuz_client.py
Fetch all Qobuz favorite tracks for discovery
4 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
#704 : add "Relocate" fix for AcoustID mismatches — retag + restage for re-import
1 week 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
1 month 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
Socket.IO CORS: handle self-review nits
2 months ago
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
Surface engine-not-wired errors + exclude soulseek from monitor aggregation
2 months ago
source_ids.py
Source IDs: add canonical registry, adopt at the highest-value sites
3 weeks ago
spotify_client.py
Spotify: rename "Spotify Free" → "Spotify (no auth)", default enrichment to it
2 weeks ago
spotify_free_metadata.py
Spotify Free: close the album-search gap via the artist's discography
2 weeks 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)
2 weeks ago
spotify_worker.py
Spotify: rename "Spotify Free" → "Spotify (no auth)", default enrichment to it
2 weeks ago
tag_writer.py
feat(verification): status vocabulary, DB column, SOULSYNC_VERIFICATION tag
1 week 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
2 weeks 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
MS Cin-5: Drop per-server globals — engine owns the clients
2 months ago
wishlist_service.py
Extract wishlist logic into dedicated package
2 months ago
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