Every tech aggregator includes to be comprehensive, which makes them all read the same. NextRecap does the opposite: it excludes to be sharp — an AI taste-gate in the publish path drops the boring news on purpose.
NextRecap pulls from dozens of free sources, then runs each story through an AI taste-gate in the publish path. The gate's question isn't “is this tech?” — it's “is this actually worth someone's time?” Deals, earnings, org-chart news, restated rumours and life-hack listicles are dropped on purpose.
What's left is baked to a static site that loads instantly and depends on no platform's API to keep working.
The gate runs against a written editorial line, so what counts as worth publishing is a spec, not a vibe — and every editorial rule has a regression fixture, so a prompt change can't quietly move the line.
Judge-once caching means a story is only ever assessed once. The verdict is settled, stored, and never re-litigated on the next run.
Every company, product line and release tracked over time on a three-level model — Anthropic → Claude → Claude Opus 5 — so you can read everything on one thing, in order.
A no-login “here's what's new” that runs with zero server and about 2.7KB of inline JavaScript, using run-length-encoded timestamps to stay tiny.
Story clustering collapses forty near-identical articles about one launch into a single card with its source list — the news, not the echo.
A ledger of what actually shipped, plus event countdowns with an ICS feed you can subscribe to — each gated to the things that genuinely made news.
A twice-daily brief that reads like a columnist, not a ticker — the day's shape in three paragraphs, with an archive of every brief before it.
The whole site is baked to flat files on Cloudflare's edge. No database at runtime, no client-side API calls, nothing that can fall over when a platform changes its terms.
The whole pipeline runs on a schedule every two hours: fetch → gate → cluster → write → build → deploy to Cloudflare Workers. Model spend is about $15–20 a month.
The guiding principle is a deterministic floor under every AI call: the model proposes, tested code disposes. Clustering, release detection, entity matching and content filters all work this way, so a prompt change can't silently reopen a decision that was already settled.
A reliability harness wraps the fail-soft pipeline — a publish gate that turns a bad run red, a regression fixture for every editorial rule, a cost meter, credential-expiry checks, and a freshness watchdog on a separate Cloudflare Worker that self-heals a stalled refresh and files a ticket if the live data goes stale. Coverage grows on evidence, not guesswork: weekly jobs mine the archive for new sources worth adding and recurring names that should become tracked entities.
It's the same discipline I bring to client AI work — let the model do the judgement, keep tested code in charge of the consequences. If you've got something in that shape, get in touch.