Media Tracker · Internal · Not public

Review console

Machine-surfaced candidates, waiting on a human. Nothing here publishes. Rejections matter more than confirmations — each one names a way the detector is wrong.

No account needed. The name you type gets stamped on every call you make and can't be edited afterwards — and nothing checks it's really you, so a name here is a claim, not proof of who decided.

What the day was about

Loading day context…

The taper toward older dates is a collection artefact, not a finding. Each RSS feed returns only its latest 15–200 items, so a day that had already passed when ingestion started — or before a given outlet was added to the config — was captured shallowly or not at all. A smaller count on an older day means the crawler saw less of that day. It does not mean less news happened, and the shape of this strip is not a trend in news volume. The bands are order-of-magnitude only, and no day’s total should be read as a measurement of that day or compared against another’s.

What you're being asked to do
  1. Read the question on the card. It changes per detector — echoing a rival's wording, one owner briefing two languages differently, and dropping a story are three different claims.
  2. Open both sources. A headline alone rarely settles it. The question is about what the outlets did, and the links are the evidence.
  3. Confirm only if that specific claim holds. Not "this outlet seems biased" — that isn't the question, and it isn't reviewable.
  4. Otherwise reject and pick the reason. The reason is the point: it says how the detector went wrong so the next run does better.

Expect to reject most of them. These are machine guesses; a queue where everything gets confirmed means the bar was set too low. Confirming does not publish anything — it hands the item to someone who writes the callout in their own words, and only that writeup ever reaches the public feed.

Roughly a minute each. Decisions save one at a time, so stopping halfway is fine.

Queue
Confirmed
Rejected
Precision
J/K move · C confirm · R reject
Something failed

Loading candidates…

What the machine got wrong

Fills in as you reject. Each reason maps to a specific change in the detector — this panel is the bridge between “that’s a bad call” and a code fix. Counts come from the review log, so they include every reviewer, not just this session.

No rejections yet. Reject something and the failure pattern shows up here.

Already known wrong

Failure modes found before review even started, kept here so they aren’t rediscovered.

FailureSeenFix
Same-owner cross-posting counted as independent amplification10Exclude shared owner_group pairs from amplification
Duplicate candidates from one story4Dedupe by (story, outlet-pair) before queueing
Weekly creators flagged for “going silent”3follow_through needs a per-outlet cadence baseline
Confidence ranks by similarity gap, not editorial severityallSeparate the two; they are different quantities
No contradiction type — direct factual conflicts file as follow_through1Add to the taxonomy

Decisions are written to D1 and appended to review_log under the name you typed into this browser. That name is self-declared and unverified — the log records who claimed to make a call, not who provably did. The log is append-only: a decision can be superseded by a later one, never erased.
Everything decided here is a recommendation. This console publishes nothing and writes no callouts; a human does that elsewhere, deliberately.