diff options
| author | Christophe Besson <cbesson@gmail.com> | 2026-08-25 14:50:36 +0200 |
|---|---|---|
| committer | Christophe Besson <cbesson@gmail.com> | 2026-08-25 14:50:36 +0200 |
| commit | bbc76ad4da3ca61f820b9605ec9228c7a9357352 (patch) | |
| tree | e1295931bfdfcaa28174c247ff9dd37627022f9d /packages/meshbay-node/tests/test_indexer.py | |
| parent | c52e85b984bffc78125aff744513bc5d33ad72b3 (diff) | |
| download | meshbay-bbc76ad4da3ca61f820b9605ec9228c7a9357352.tar.gz | |
fix(node): fall back to a loose MusicBrainz query when the strict one finds nothing
search_release() only ever tried a field-scoped exact-phrase Lucene query
(artist:"..." AND release:"..."). Verified live against musicbrainz.org:
any deviation from MusicBrainz's own spelling (a year suffix, an edition
tag, an artist credited under an older/aliased name) drops it to zero
results outright rather than a low-scored one, so the confidence check
never even ran — this is why well-recognized artists were still getting
almost no cover art. Add an unscoped loose-query fallback, escape Lucene
special characters in the interpolated tag text, and make the confidence
score consider the artist match too (not just the album title) now that
the fallback has no field scoping to rely on.
Also document MESHBAY_MUSICBRAINZ_CONTACT_DEFAULT in the systemd units
and man page, mirroring MESHBAY_TMDB_DEFAULT_TOKEN's precedent — never a
literal value in source, configured via node.env.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013XSohfUQQiaE77qyFLgSv3
Diffstat (limited to 'packages/meshbay-node/tests/test_indexer.py')
0 files changed, 0 insertions, 0 deletions