here's the latest in the logs
2026-03-18 16:14:00,117 INFO __main__: Seeded 13 sources
2026-03-18 16:14:00,118 INFO __main__: Scheduler started — checking sources every 60s
2026-03-18 16:14:00,143 INFO __main__: Startup summary — enabled_sources=11 total_sources=13 enabled_feeds=5
2026-03-18 16:14:17,133 INFO __main__: [xml-cache] refreshed 6 XML artifact(s)
2026-03-18 16:14:17,261 INFO __main__: Worker listening on queue: scraper
2026-03-18 16:15:00,126 INFO __main__: [scheduler] Enqueued roku (interval=60m, age=1541m)
2026-03-18 16:15:00,182 INFO app.worker: FastChannels worker v1.8.0 starting
2026-03-18 16:15:00,190 INFO app.worker: [roku] Scrape job started
2026-03-18 16:15:01,572 INFO app.scrapers.roku: [roku] 794 channels fetched
2026-03-18 16:15:01,582 INFO app.scrapers.roku: [roku] EPG skip: 485/794 channels have fresh programs, skipping content proxy
2026-03-18 16:16:08,607 INFO app.scrapers.roku: [roku] description backfill: 992 unique IDs (504 cached, 488 fetched) → 1031 programs filled
2026-03-18 16:16:08,812 INFO app.scrapers.roku: [roku] prewarm seed: seeded osm_session from 483af83e821059b8b3f0825ae2d43e31
2026-03-18 16:16:08,812 INFO app.scrapers.roku: [roku] cache warm summary: play_id=698/794 selector=698/794 stream_url=0/794 retry_play=0 retry_selector=0
2026-03-18 16:16:08,812 INFO app.scrapers.roku: [roku] 1060 EPG entries fetched for 794 channels
10.89.3.26 "GET / HTTP/1.1" 302 201 0s
10.89.3.26 "GET /favicon.ico HTTP/1.1" 404 207 0s
2026-03-18 16:16:34,278 INFO app.worker: [xml-cache] refreshed 6 XML artifact(s)
2026-03-18 16:16:34,402 INFO app.worker: [roku] Scrape complete — 794 channels, 1060 programs (94.2s)
2026-03-18 16:16:34,413 INFO app.routes.images: [images] pre-warm starting: 794 URLs — 794 already fresh, 0 to fetch (8 workers)
2026-03-18 16:16:34,413 INFO app.routes.images: [images] pre-warm done: 0 cached, 794 already fresh, 0 failed (of 794 total)