diff --git a/listenarr.application/Metadata/Core/AudiobookMetadataService.cs b/listenarr.application/Metadata/Core/AudiobookMetadataService.cs index 3181f7e1f..97bf0310b 100644 --- a/listenarr.application/Metadata/Core/AudiobookMetadataService.cs +++ b/listenarr.application/Metadata/Core/AudiobookMetadataService.cs @@ -115,6 +115,18 @@ public AudiobookMetadataService( continue; } + // An ASIN missing from Audible's catalog comes back as a + // non-null but EMPTY product stub (no title, no fields). + // Treating that as an answer both returns junk to the + // caller and blocks every later source in the chain. + if (result is AudibleBookResponse shell && string.IsNullOrWhiteSpace(shell.Title)) + { + _logger.LogInformation( + "{SourceName} returned an empty product stub for ASIN {Asin}; treating as no answer", + source.Name, asin); + result = null; + } + if (result != null) { _logger.LogInformation("Successfully fetched metadata from {SourceName} for ASIN: {Asin}", source.Name, asin);