soulsync/core
Broque Thomas 0edb8e93bb Fix MBID Mismatch Detector comparing MB title against DB title (filename) instead of embedded tag
The scan was reading `t.title` from the database for comparison, which is
populated from the filename rather than the file's embedded TITLE tag. Any
track whose filename differs from the clean MB title (e.g. includes artist,
album, bitrate) was incorrectly flagged as a mismatch.

Fix: extend `_read_mbid_from_file` → `_read_file_tags` to also read the
embedded TITLE tag (ID3 TIT2, Vorbis `title`, MP4 `©nam`). The comparison
now uses the embedded title, falling back to the DB title only when no TITLE
tag is present in the file.

Fixes #296
2026-04-14 12:19:41 -07:00
..
repair_jobs Fix MBID Mismatch Detector comparing MB title against DB title (filename) instead of embedded tag 2026-04-14 12:19:41 -07:00
acoustid_client.py Fix AcoustID test connection falsely failing for valid API keys 2026-04-13 09:37:50 -07:00
acoustid_verification.py Skip AcoustID verification for high-confidence cross-language matches 2026-03-29 20:04:41 -07:00
album_consistency.py Add Picard-style MB release preflight for album downloads 2026-03-23 12:42:29 -07:00
api_call_tracker.py Persist API call history, record rate limit events, fix Spotify re-auth issues 2026-04-05 12:36:58 -07:00
audiodb_client.py Add API Rate Monitor dashboard with real-time speedometer gauges 2026-04-02 10:46:43 -07:00
audiodb_worker.py Improve graceful shutdown and rollback safety 2026-04-12 15:17:18 +03:00
automation_engine.py Add Run Script action to automation engine 2026-04-09 18:20:29 -07:00
database_update_worker.py Remove emojis from all Python log and print statements 2026-04-11 21:11:02 -07:00
deezer_client.py Add Your Albums — multi-source liked albums pool (Spotify, Tidal, Deezer) 2026-04-13 23:02:37 -07:00
deezer_download_client.py Add Your Albums — multi-source liked albums pool (Spotify, Tidal, Deezer) 2026-04-13 23:02:37 -07:00
deezer_worker.py Improve graceful shutdown and rollback safety 2026-04-12 15:17:18 +03:00
discogs_client.py Fix Discogs cache — add field extractor, wire worker caching, browser UI 2026-04-02 19:47:36 -07:00
discogs_worker.py Improve graceful shutdown and rollback safety 2026-04-12 15:17:18 +03:00
download_orchestrator.py Add first-run setup wizard and fix download path reloading 2026-04-11 22:45:16 -07:00
genius_client.py Add API Rate Monitor dashboard with real-time speedometer gauges 2026-04-02 10:46:43 -07:00
genius_worker.py Improve graceful shutdown and rollback safety 2026-04-12 15:17:18 +03:00
hifi_client.py Add per-source quality fallback toggle for streaming downloads (#187) 2026-03-24 11:42:47 -07:00
hydrabase_client.py Add missing _get_artist_image_from_albums to HydrabaseClient 2026-03-23 17:54:21 -07:00
hydrabase_worker.py Improve graceful shutdown and rollback safety 2026-04-12 15:17:18 +03:00
itunes_client.py Upgrade artwork to highest available resolution for Spotify and iTunes 2026-04-13 15:04:37 -07:00
itunes_worker.py Improve graceful shutdown and rollback safety 2026-04-12 15:17:18 +03:00
jellyfin_client.py Fix Jellyfin playlist track fetch truncating at default API limit 2026-04-13 15:17:52 -07:00
lastfm_client.py Your Artists on Discover + Deezer OAuth + MB Lookups Manager + Explorer improvements + bug fixes 2026-04-03 22:39:05 -07:00
lastfm_worker.py Improve graceful shutdown and rollback safety 2026-04-12 15:17:18 +03:00
lidarr_download_client.py Add Lidarr as 7th download source and validate music video path 2026-04-11 07:59:12 -07:00
listenbrainz_client.py Remove emojis from all Python log and print statements 2026-04-11 21:11:02 -07:00
listenbrainz_manager.py Remove emojis from all Python log and print statements 2026-04-11 21:11:02 -07:00
listening_stats_worker.py Tighten up teardown logic 2026-04-12 18:13:27 +03:00
lyrics_client.py Remove emojis from all Python log and print statements 2026-04-11 21:11:02 -07:00
matching_engine.py Fix album matching using full similarity instead of word subset check 2026-04-12 10:48:24 -07:00
media_scan_manager.py Tighten up teardown logic 2026-04-12 18:13:27 +03:00
metadata_cache.py Reject tracks with Unknown Artist from metadata cache 2026-04-12 09:27:17 -07:00
metadata_service.py Remove emojis from all Python log and print statements 2026-04-11 21:11:02 -07:00
musicbrainz_client.py Add API Rate Monitor dashboard with real-time speedometer gauges 2026-04-02 10:46:43 -07:00
musicbrainz_service.py Add metadata cache maintenance and health monitoring 2026-03-30 07:40:20 -07:00
musicbrainz_worker.py Improve graceful shutdown and rollback safety 2026-04-12 15:17:18 +03:00
navidrome_client.py Remove emojis from all Python log and print statements 2026-04-11 21:11:02 -07:00
personalized_playlists.py Replace all legacy metadata_service imports with canonical functions 2026-04-10 12:52:36 -07:00
plex_client.py Fix Plex playlists crash on Tag objects and add Unknown Artist guard 2026-04-12 10:43:51 -07:00
plex_scan_manager.py Tighten up teardown logic 2026-04-12 18:13:27 +03:00
qobuz_client.py Add Qobuz auth token login as CAPTCHA bypass alternative 2026-04-08 10:37:38 -07:00
qobuz_worker.py Improve graceful shutdown and rollback safety 2026-04-12 15:17:18 +03:00
repair_worker.py Improve graceful shutdown and rollback safety 2026-04-12 15:17:18 +03:00
seasonal_discovery.py Remove emojis from all Python log and print statements 2026-04-11 21:11:02 -07:00
soulid_worker.py Improve graceful shutdown and rollback safety 2026-04-12 15:17:18 +03:00
soulseek_client.py Add first-run setup wizard and fix download path reloading 2026-04-11 22:45:16 -07:00
spotify_client.py Upgrade artwork to highest available resolution for Spotify and iTunes 2026-04-13 15:04:37 -07:00
spotify_public_scraper.py Add Spotify Link tab for public playlist/album scraping without API credentials 2026-03-15 21:25:05 -07:00
spotify_worker.py Improve graceful shutdown and rollback safety 2026-04-12 15:17:18 +03:00
tag_writer.py Use per-track artist in tag writer for compilations and DJ mixes 2026-04-11 18:31:11 -07:00
tidal_client.py Add Your Albums — multi-source liked albums pool (Spotify, Tidal, Deezer) 2026-04-13 23:02:37 -07:00
tidal_download_client.py Add per-source quality fallback toggle for streaming downloads (#187) 2026-03-24 11:42:47 -07:00
tidal_worker.py Improve graceful shutdown and rollback safety 2026-04-12 15:17:18 +03:00
watchlist_scanner.py Raise artist discography limit from 50 to 200 with Deezer pagination 2026-04-12 21:46:04 -07:00
web_scan_manager.py Tighten up teardown logic 2026-04-12 18:13:27 +03:00
wishlist_service.py Fix wishlisted tracks showing 'Unknown Album' with no cover art 2026-03-18 14:23:53 -07:00
worker_utils.py Improve graceful shutdown and rollback safety 2026-04-12 15:17:18 +03:00
youtube_client.py Add first-run setup wizard and fix download path reloading 2026-04-11 22:45:16 -07:00