soulsync/tests/tools
dev 310a5fe1bd feat(quality): quality-aware source fall-through in search_with_fallback
Add core/quality/selection.py: rank_with_targets() returns (ranked,
satisfied) where satisfied = a candidate meets a real target (strict).
load_profile_targets()/rank_for_profile() are the DB-backed wrappers.

search_with_fallback now skips a source that can deliver no target-meeting
quality and escalates to the next (source priority still wins among
satisfying sources; first source's results kept as fallback unless the
profile disables it). Returns RAW tracks — the satisfied check is a coarse
source gate; match-filtering + final ranking stay in the orchestrator so
the correct track is never pruned. Ranking is fail-open: a ranking error
never drops a source's real results.

Tested: rank_with_targets satisfied/fallback matrix + engine escalation,
stop-on-first, raw-not-pruned, fallback on/off. Amazon field test updated
for the corrected format token.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-14 12:33:34 +02:00
..
__init__.py Amazon Music provider: metadata client + download source (T2Tunes) 2026-05-16 07:46:41 -07:00
test_amazon_client.py test(amazon): update search_albums test for derived-from-tracks behavior 2026-05-19 18:22:56 -07:00
test_amazon_download_client.py feat(quality): quality-aware source fall-through in search_with_fallback 2026-06-14 12:33:34 +02:00
test_amazon_worker_schema.py Harden Amazon worker schema migration 2026-05-18 15:47:04 -07:00
test_t2tunes_probe.py Add T2Tunes probe unit tests 2026-05-16 11:49:03 -07:00