From 0e27d73d0770db538764ef773615826e8f1ea3be Mon Sep 17 00:00:00 2001 From: root Date: Sat, 28 Mar 2026 00:26:45 +0000 Subject: [PATCH] =?UTF-8?q?fix:=20metadata=20enrichment=20fails=20silently?= =?UTF-8?q?=20=E2=80=94=20use=20'or=20{}'=20for=20None=20metadata?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit .get('metadata', {}) returns None when key exists with None value, causing 'NoneType has no attribute copy' in MetadataEnricher. Enrichment now works: 17/20 anime + 15/28 series results show synopsis. --- app/routers/router_anime.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/app/routers/router_anime.py b/app/routers/router_anime.py index 66b510f..ff9f0ee 100644 --- a/app/routers/router_anime.py +++ b/app/routers/router_anime.py @@ -170,8 +170,8 @@ async def search_anime_unified( if len(results[pid]) <= 15: enrichment_tasks.append( enricher.enrich_metadata( - item_dict.get("metadata", {}), - item_dict.get("title", ""), + item_dict.get("metadata") or {}, + item_dict.get("title") or "", url, ) ) @@ -277,9 +277,9 @@ async def search_series_unified( if isinstance(item, dict): enrichment_tasks.append( enricher.enrich_metadata( - item.get("metadata", {}), - item.get("title", ""), - item.get("url", ""), + item.get("metadata") or {}, + item.get("title") or "", + item.get("url") or "", ) ) enrichment_mapping.append((provider_id, idx))