Skip to content

652 stories tracked from 296 outlets · 203 negative / 51 positive

Latest story

Transparency

Method

How a story gets into this archive, and how it gets a label. Everything on this page is the actual pipeline, including the parts of it that are weak.

1. Collection

22 feeds are polled on a schedule. They cover technology trade press, general-interest and wire reporting, outlets whose beat is AI's harms and costs, research institutions, and a set of search-driven queries that catch coverage from publications with no usable feed. The full list and each feed's current status is public.

An item is kept only if one of 39 AI-related terms appears in its headline or summary. A second filter drops conference marketing, sponsored posts, and deals roundups, which trade outlets publish through the same feeds as their journalism.

2. Deduplication

URLs are stripped of tracking parameters before they become identities, so the same story arriving through three feeds is one row. Headlines are reduced to a sorted fingerprint of their significant words, which catches wire copy running under different headlines at different outlets.

Where this fails: a story rewritten heavily enough will land twice, and a genuinely distinct follow-up with a near-identical headline will be dropped as a duplicate. The fingerprint is deliberately blunt.

3. Tagging

Companies and topics are matched literally against a published taxonomy, with word boundaries enforced and patterns shorter than three characters rejected. Nothing is inferred. A tag on a story means those exact words appeared in it.

Where this fails: a company referred to only by a nickname gets no tag, and a story that merely name-checks a company in passing gets the same tag as one that is about it. Tags are a finding aid, not a claim about what the story is really about.

4. Sentiment labels

Each story is labeled positive, negative, neutral, or mixed based on its headline and the summary the publisher supplied in the feed. The label describes how the coverage reads toward its subject.

  • Positive — capability gains, benefits delivered, successful adoption, explicit praise.
  • Negative — harm, failure, litigation, backlash, cost, risk, explicit criticism.
  • Neutral — factual reporting with no discernible slant; announcements reported straight.
  • Mixed — substantively both at once.

Two scorers

The primary scorer is a language model (claude-sonnet-5), prompted to judge framing rather than to have an opinion about AI, and to return the one-sentence reason that appears on every story page. The fallback is a weighted lexicon tuned for this beat, with negation and intensifier handling. The lexicon runs with no network and no key, so a scheduled build degrades rather than stopping when a model call fails.

Every story page names which scorer produced its label. Lexicon-scored labels carry a hard confidence ceiling, because term matching cannot read irony, quotation, or a headline reporting someone else's opinion.

Heaviest lexicon terms

Negative

catastrophic · existential risk · fraud · snake oil · sweatshop · bankruptcy · malware · scam · theft · exploitation · discrimination · discriminatory

Positive

saves lives · life-saving · breakthrough · cure · diagnose earlier · praised · acclaimed · milestone · state of the art · outperform · outperforms · most accurate

5. What these labels are not

They are not a fact-check. A story labeled positive may be wrong; a story labeled negative may be right. The label reads tone, nothing else.

They are not this site's opinion of AI. Rage Against the Clock does not endorse or oppose the stories it tracks. Sentiment labels describe the tone of the coverage toward its subject, not whether the reporting is accurate or whether we agree with it.

They are not a measure of the press as a whole. This archive can only describe the feeds in its pool. The outlet mix chart exists so that limitation stays visible: if one outlet dominates the pool, the headline split is describing that outlet.

They read the headline and the feed summary, not the full article. A headline that misrepresents its own story will be labeled as the headline reads.

6. Corrections

Every label ships with its reasoning and a confidence number, and the whole archive is downloadable as JSON so anyone can check the classification against the source. If a label is wrong, write to editor@rageagainsttheclock.com with the story link.