Methodology
How PNN scores headlines, generates reframes, and decides when not to.
The pipeline
We poll a curated set of news outlets every 30 minutes. Each new article is scored by Claude Haiku 4.5 on a continuous scale from −1.0 (extremely negative) to +1.0 (extremely positive), with a confidence estimate and a one-sentence justification of why we landed where we did.
Articles scoring below −0.2 are sent to Claude Sonnet 4.6 for two reframes: a constructive (✨ Positive) version and a satirical (🎭 Sarcastic) version. Both keep the same facts — same numbers, same actors, same outcomes. Only the framing changes.
The Tragedy Lock
We do not reframe articles about death, active violence, mass casualty, natural disaster, humanitarian crisis, personal tragedy, or acute mental health crisis. The original framing is the only framing such articles will ever appear in on PNN.
This is enforced in three layers. The scoring prompt itself classifies whether a reframe would be ethically appropriate (reframe_safe). The reframe worker refuses to even queue locked articles. And the database has a CHECK constraint that physically rejects any attempt to write a reframe to a locked row. Three layers, all must pass.
Why so much friction? Sarcasm cannot land cleanly when it sits next to a death toll. Positive framing of casualties is sanitisation. Some stories are just stories and we leave them alone.
Sunglasses (positive mode)
When you switch on sunglasses mode, locked articles are filtered out entirely rather than shown unreframed. You opted into a calmer reading experience and a tragedy headline shouldn’t break it. The site-wide magnitude visualization still includes them — the negative ratio is the negative ratio.
Costs and limits
Scoring an average headline costs about $0.0002. A reframe pair costs about $0.005. The pipeline has a hard daily cap; if a runaway day approaches it, scoring degrades to title-only and reframes are dropped first. We’d rather miss articles than bankrupt the project.
When the AI gets it wrong
On every article you can answer two quick questions: was the score accurate, and did you like the reframe? Articles that get repeated “no” answers are queued for prompt review. The classifier is conservative by design — it would rather lock something it shouldn’t (and miss a reframe opportunity) than generate satire of a tragedy. False locks are visible in our internal dashboard.
Open data
/api/feed,/api/aggregates/today,/api/aggregates/outlets,/api/picks are public JSON. Researchers can build on top.