soulsync/core/quality
dev 8934c6418c fix(quality): correct ranking behaviour flagged in PR #896 (#3, #4)
#3 priority mode is quality-agnostic again: search_with_fallback (the
priority/hybrid path — best_quality has its own search_all_sources) returned
the first source whose results met a target, so an mp3 with bitrate=None (slskd
omits it often) was deemed unsatisfied and deprioritised, changing which source
wins for users who never opted in. Restore "first source with tracks wins",
byte-for-byte; cross-source quality pooling stays in best_quality mode.

#4 metadata-less FLAC no longer over-claims a hi-res target: matches_target let
a FLAC with no sample_rate/bit_depth satisfy a 24-bit/192k target while a real
16/44 FLAC failed it, so unknown-spec files outranked and discarded genuine CD
FLAC under audiophile/hi-res profiles. An unconfirmable spec now fails the strict
tier and falls to the plain-flac bucket.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 21:25:36 +02:00
..
__init__.py feat: global AudioQuality model with post-download quarantine + retry 2026-06-13 22:22:08 +02:00
model.py fix(quality): correct ranking behaviour flagged in PR #896 (#3, #4) 2026-06-24 21:25:36 +02:00
selection.py feat(quality): unify quality scanner onto the real ranked-target core (strict) 2026-06-14 22:50:01 +02:00
source_map.py feat(quality): derive per-source download tier from the global profile 2026-06-14 13:18:01 +02:00