A failed lookup CALL (network/429/5xx/timeout, or an expired TVDB token) was recorded as 'not_found' — permanently logging a transient blip as 'no match' and parking the item for retry_days. Now mirrors the music workers' proven pattern: - New 'error' status, distinct from 'not_found'; enrichment_next retries BOTH after retry_days, so errors recover and the queue still advances (no poison loop). breakdown/unmatched/retry-all and the modal account for it (shown with the outstanding/pending bucket). - TMDB/TVDB clients raise on non-200 (429/5xx) so the worker records 'error', not a false not_found. - TVDB re-authenticates once on a 401 (expired token) instead of failing every match for the rest of the run. Seam tests: error!=not_found, error retried after window, 429 raises, TVDB token refresh, UI accounts for errors. |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| music_database.py | ||
| personalized_schema.py | ||
| video_database.py | ||
| video_schema.sql | ||