from typing import Protocol from lyra_worker.types import MBTarget class MbResolver(Protocol): def resolve(self, artist: str, album: str) -> MBTarget | None: """Return a canonical MBTarget (with track_count) or None if no confident match.""" ...