-
feat: browse MinIO cache + ReapStaleTasks filter fix
All checks were successfulRelease / Scraper / Test (push) Successful in 20sRelease / UI / Build (push) Successful in 25sCI / Scraper / Lint (pull_request) Successful in 10sRelease / v2 / Build ui-v2 (push) Successful in 28sCI / Scraper / Test (pull_request) Successful in 15sCI / UI / Build (pull_request) Successful in 25sRelease / Scraper / Docker (push) Successful in 55sRelease / UI / Docker (push) Successful in 43sCI / Scraper / Docker Push (pull_request) Has been skippedCI / UI / Docker Push (pull_request) Has been skippedRelease / v2 / Docker / ui-v2 (push) Successful in 36sRelease / v2 / Test backend (push) Successful in 3m51sRelease / v2 / Docker / runner (push) Successful in 36sRelease / v2 / Docker / backend (push) Successful in 1m34siOS CI / Build (pull_request) Successful in 5m33siOS CI / Test (pull_request) Successful in 11m25sreleased this
2026-03-15 21:21:29 +05:00 | -226 commits to main since this release- Runner fetches 9 browse page combos every 6h and caches JSON in MinIO
(libnovel-browse bucket). Backend serves page 1 from cache; falls back
to live fetch; returns empty+cached:false on total failure instead of 502. - Fix ReapStaleTasks: use heartbeat_at=null (not "") in PocketBase filter
and nil in patch payload — was causing 400 errors on every reap cycle.
Builds: libnovel-backend, libnovel-runner, libnovel-ui-v2
Downloads
- Runner fetches 9 browse page combos every 6h and caches JSON in MinIO