goon/app/resolve
jtrzupek bb9e1afc31 fix(resolver): refresh thumbnails on re-scrape instead of fill-only-if-null
_upsert_playback_sources only set thumbnail_url when the existing value was NULL,
so signed CDN thumbnails that ROT (sxyprn/trafficdeposit tokens expire ~weekly →
404) were never replaced even when a fresh re-scrape captured a valid URL — making
the rot permanent (bug 2026-06-10). Always overwrite thumbnail_url/animated_thumbnail_url
with the freshly-scraped value when present; other fields keep fill-if-null. Lets
the regular performer-driven ingest self-heal thumbnails for re-crawled scenes.

(Note: old sxyprn backlog can't be bulk-refreshed — search/listings don't re-surface
those posts, verified 0 overlap — so it's forward-looking; old sxyprn-only scenes
fall back to the clean placeholder.)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-10 10:28:18 +02:00
..
__init__.py Initial commit 2026-05-20 10:10:22 +02:00
movie_match.py Initial commit 2026-05-20 10:10:22 +02:00
movie_resolver.py Initial commit 2026-05-20 10:10:22 +02:00
movie_score.py Initial commit 2026-05-20 10:10:22 +02:00
performer_resolver.py Initial commit 2026-05-20 10:10:22 +02:00
scene_match.py feat(ingest): SQL phash match, tag inference + backfill, clip-store skip, browse tubes, watchdog 2026-06-01 15:07:35 +02:00
scene_merge.py fix(merge): move playback_sources on scene merge + exact-title+duration dedup 2026-06-08 10:56:50 +02:00
scene_resolver.py fix(resolver): refresh thumbnails on re-scrape instead of fill-only-if-null 2026-06-10 10:28:18 +02:00
scene_score.py Mobile 0.1.9: OTA enable, WebView cookie-dismiss fix, porndoe connector 2026-05-22 11:20:57 +02:00
scoring.py Mobile 0.1.9: OTA enable, WebView cookie-dismiss fix, porndoe connector 2026-05-22 11:20:57 +02:00
studio_resolver.py Initial commit 2026-05-20 10:10:22 +02:00
studio_title_parser.py Initial commit 2026-05-20 10:10:22 +02:00
tag_resolver.py fix(tags): merge <base>2 numbered-duplicate tags + prevent regeneration 2026-06-06 23:18:44 +02:00