Fix artist images: filter Last.fm placeholder, reorder providers, fix alias bug

Three bugs causing all artist images to be the same Last.fm placeholder:

1. Last.fm stopped serving real artist images years ago and returns a
   generic placeholder (hash 2a96cbd8b46e442fc41c2b86b821562f) for
   every artist. Added filter in selectBestImage to reject URLs
   containing this known placeholder hash.

2. Provider order had Last.fm before Deezer for artist images. Since
   Last.fm "succeeded" with the placeholder, Deezer was never reached.
   Swapped order: Deezer now checked before Last.fm.

3. FetchMissingArtistImages had inverted if/else — aliases were used
   on error, bare name on success. Fixed condition to err == nil.
This commit is contained in:
safierinx-a 2026-03-27 03:11:05 +05:30
parent 26aa3eca1f
commit 07179b648e
3 changed files with 16 additions and 13 deletions

View file

@ -298,7 +298,7 @@ func FetchMissingArtistImages(ctx context.Context, store db.DB) error {
Msg("FetchMissingArtistImages: Attempting to fetch missing artist image")
var aliases []string
if aliasrow, err := store.GetAllArtistAliases(ctx, artist.ID); err != nil {
if aliasrow, err := store.GetAllArtistAliases(ctx, artist.ID); err == nil {
aliases = utils.FlattenAliases(aliasrow)
} else {
aliases = []string{artist.Name}