refactor: section the config and make prompts a module

This commit is contained in:
Justin Visser 2026-08-10 11:59:02 +02:00
parent 5c3ba8d6ec
commit e970bdf542
6 changed files with 205 additions and 44 deletions

View file

@ -12,7 +12,11 @@ _SUFFIX_PATTERN = re.compile(r"(?:\s*(?:\([^)]*\)|\[[^]]*\]))+\s*$")
@dataclass(frozen=True)
class MatchVerdict:
"""Explain whether a Spotify track safely matches a proposed candidate."""
"""Match decision plus the two signals it was derived from.
A rejection is attributable: either title_similarity fell below the
caller's threshold, or is_artist_match is false, or both.
"""
is_match: bool
title_similarity: float