soulsync/core/video/enrichment
BoulderBadgeDad 6fcebe7c4b video: detail extras data layer — gallery, all videos, keywords, facts, full cast (+ caching)
One TMDB call (append_to_response) now also returns: image gallery (backdrops +
posters, thumb+full), all YouTube videos (ordered trailer→teaser→clip→…), keyword
tags, facts (budget/revenue/language/country), and the FULL cast (tv via
aggregate_credits with per-actor episode counts). Shared by item_extras (owned)
and full_detail/tmdb_detail (preview).

Caching: the engine memoizes the live TMDB extras + preview payloads (30-min TTL)
so re-opening a title is instant instead of re-hitting TMDB. Tests added.
2026-06-15 11:17:33 -07:00
..
__init__.py video enrichment 1b: worker engine + TMDB/TVDB clients 2026-06-14 11:21:30 -07:00
clients.py video: detail extras data layer — gallery, all videos, keywords, facts, full cast (+ caching) 2026-06-15 11:17:33 -07:00
engine.py video: detail extras data layer — gallery, all videos, keywords, facts, full cast (+ caching) 2026-06-15 11:17:33 -07:00
worker.py video: OMDb daily-limit cools down + auto-resumes (vs hard pause) 2026-06-15 09:34:47 -07:00