mirror of
https://github.com/navidrome/navidrome.git
synced 2026-08-01 07:21:17 +00:00
The legacy getLyrics handler type-asserted api.lyrics to a separate BatchLyrics interface with a fallback loop for the non-batch case. The assertion always succeeded (the only implementation is *lyricsService), so the fallback was dead code -- and had it run, its file-outer / priority-inner order would have violated the configured source priority. Add GetLyricsForMediaFiles to the Lyrics interface and introduce a narrow Provider interface (just GetLyrics) for the single-file plugin contract. The handler now calls GetLyricsForMediaFiles directly, and LoadLyricsProvider returns the narrower Provider.