From 1695953705d08924a76b6032cac1502d8a6779f2 Mon Sep 17 00:00:00 2001 From: Broque Thomas <26755000+Nezreka@users.noreply.github.com> Date: Mon, 20 Apr 2026 12:46:01 -0700 Subject: [PATCH] Fix AcoustID high-confidence skip letting wrong files through MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The high-confidence fingerprint skip (≥0.95) assumed title mismatches were language/script differences and bypassed verification. But a high fingerprint score just means AcoustID identified the audio confidently — not that it matches the requested track. Now requires partial title (≥0.55) or artist (≥0.60) similarity before skipping, so completely wrong files (e.g. different song/artist from same remix producer) are correctly rejected. --- core/acoustid_verification.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/core/acoustid_verification.py b/core/acoustid_verification.py index f3f9d270..5bfb6f92 100644 --- a/core/acoustid_verification.py +++ b/core/acoustid_verification.py @@ -330,11 +330,13 @@ class AcoustIDVerification: logger.info(f"AcoustID verification PASSED (scan match) - {msg}") return VerificationResult.PASS, msg - # No match found — but if fingerprint score is very high (≥0.95), - # the audio IS correct and the title mismatch is likely a language - # difference (e.g. Japanese kanji vs English title for the same song). + # No match found — but if fingerprint score is very high (≥0.95) + # AND there's partial similarity in title or artist, the mismatch is + # likely a language/script difference (e.g. Japanese kanji vs English). # Skip rather than quarantine a correct file. - if best_score >= 0.95: + # But if both title AND artist similarity are very low, the download + # source gave us a completely wrong file — fail it. + if best_score >= 0.95 and (title_sim >= 0.55 or artist_sim >= ARTIST_MATCH_THRESHOLD): top = recordings[0] msg = ( f"Title/artist mismatch but fingerprint confidence very high ({best_score:.2f}): "