Google News RSS
How to run
- Fetch the feed with a browser-like User-Agent and a 15s timeout.
- Parse
<item>blocks (Atom<entry>fallback):title,link,pubDate. - Decode basic entities (
&,<,>,",', ). - Keep at most 25 items, newest first.
Signal shape (zod SignalSchema)
source: "google_news"
source_ref: stable dedup key derived from source+title+url
title: item title
url: item link
detected_at: pubDate or now (ISO)
Handling of failures: non-200 → {ok: false, error}; network error → same.
Never retry more than once; report the gap to the detection stage.
Budget
- One feed request per run. No pagination. If the feed is unreachable, return zero signals with an error — do not substitute another source silently.