0.5.0 (2026-05-04)
Features
- core: add deadline module and request/renderer config scaffolding (5a4e69a)
- core: thread end-to-end Deadline through scrape pipeline (5991986)
- crawl: key per-domain rate limiter by eTLD+1 (39c7954)
- crawl: per-host concurrency cap on the eTLD+1 limiter (274f462)
- renderer: add browserless/chromium opt-in stealth profile (236f626)
- renderer: chrome nav-budget cap + truncated/deadline_exceeded flags (c57cef8)
- renderer: chrome request-paused interception pump (T27) (13fcaa4)
- renderer: leak-through fallback when global breaker open & host clean (86a9e36)
- renderer: outcome-aware breaker + extraction and stealth fixes (86dd10f)
- renderer: own per-eTLD+1 host limiter in FallbackRenderer (0577516)
- renderer: recover FC-wins URLs to reach 92% bench coverage (ba12424)
Bug Fixes
- compose: auto-restart and bound memory for renderer containers (dd610cc)
- core: emit meaningful Timeout value when deadline already expired (607bb27)
- crawl: prioritize anti-bot detection over placeholder warning (05aa933)
- escalate to JS renderer on HTTP failure and empty markdown (9fc7934)
- mcp: apply per-endpoint timeouts to proxy client (741f1b2)
- renderer: enforce Deadline in HttpFetcher via tokio::time::timeout (b1c4058)
- renderer: keep larger thin-result HTML when stitching attempts (8147236)
- renderer: rescue 39 bench failures via UA, retry, and thin-content escalation (ddacb49)
- server: classify anti-bot challenges as anti_bot, not no-markdown (3ece4dd)
Performance
- renderer: drop fixed 2s JS wait, rely on SPA selector poll (cb043f7)
- renderer: tighten tier timeouts and bump LP retry threshold (3f93d60)
- renderer: widen breaker tolerance to 20 failures / 10s cooldown (6525a84)
Miscellaneous
- release 0.5.0 (3987de1)