RADICAL TRANSPARENCY
We explain the methods, limitations and available evidence behind our analysis. Coverage varies by story; inspect the article and its sources before drawing conclusions.
This is the current ingest path, based on the WTF worker code. It runs in a cycle with separate backlog workers; it is not a guaranteed, one-agent-after-another workflow for every story.
Collect and prepare
The ingest worker polls configured feeds (30-minute default), normalizes items, applies a rules-based framing score and deduplicates before saving new articles.
Group related coverage
A title-token Jaccard similarity check groups articles within a 24-hour window. This is algorithmic clustering; the ingest path does not call a separate I.N.K. agent for each match.
Select deeper analysis
F.A.C.T.'s priority selector chooses some new articles. For selected items, the current cycle requests B.I.A.S. framing, V.E.R.I.F.Y. claims, beat classification and L.O.C.A.L. geography; backlog workers cover eligible older or pending items separately.
Summarize and record
After a cluster is updated, a summary attempt runs. Analysis and summary results are stored when available; failures and unselected items can leave fields empty or pending.
Publish what is available
Article and source pages show recorded signals and links to reporting. A page may have only a subset of the workflow results.
Selection, backlog configuration, queue capacity and service availability affect coverage. A missing signal does not mean “neutral,” “verified,” or “no issue.” Automated analysis can be wrong; follow the linked reporting and primary sources.
Five framing bands
This key explains the score bands. It is an illustration of the scale, not a live ranking or a placement of named outlets.
These labels describe an analyzed article’s language and framing; they are not quality grades, truth labels, or permanent political labels for an outlet. The center band is neutral in meaning, not “better.” Outlet profiles use rolling data and suppress averages below the minimum sample size.
The AI team is a live roster
The team page shows current named roles, model labels, status, documented weak spots, department agents and recent work attribution. Those details can change as dispatch and staffing change, so they live with the roster rather than in a fixed marketing list.
Signals used when available
Bias analysis can draw on multiple signals. Which signals ran depends on the article and current system availability; additional signals do not make a score a fact or a quality rating.
- Rules-based signal: deterministic language checks can contribute framing evidence from an article’s text.
- Language-model signal: B.I.A.S. can return a structured framing score with rationale and trigger phrases for prioritized articles when that pass is available. It is an interpretation of language, not a truth verdict.
- Additional model signals: independent automated signals may contribute when enabled and available. Model assignments and coverage can change; the current roster and its documented limits are on the team page.
- Combined results: the displayed band follows the current scoring implementation and only uses signals available for that item. See the article page for which analysis was recorded.
Bias Band Thresholds
F.A.C.T. Priority Scoring
F.A.C.T. helps route selected articles into deeper analysis. Priority rules, model assignments and queue capacity can change; a queued or scored status is shown only when the system records it. See the live newsroom roster for current role and model labels.
V.E.R.I.F.Y. Claim Extraction
V.E.R.I.F.Y. analyzes selected articles and extracts verifiable factual claims. Each claim can receive a verdict:
- verified — the automated assessment judged the claim supported by available context; this is not independent proof
- mixed — the assessment found partial support or missing context
- disputed — the assessment found a conflict with available context
- unverifiable — the assessment could not verify the specific claim from its available context
- descriptive_reporting — no specific factual assertion was identified. This is not a quality judgment.
Automated verdicts can be wrong or out of date and should not be treated as independent proof. Follow the cited reporting and primary sources; the article page indicates which signals are available.
L.O.C.A.L. Geo Extraction
L.O.C.A.L. adds geographic context using automated extraction with a deterministic fallback when confidence is low. The page’s live geolocation count shows the recorded coverage; a blank location is not inferred as “no location.”
Coverage goal: ≥ 80% of articles have province_code populated within 24 hours of ingest.
Use the live roster for current assignments
Model assignments and agent roles can change with availability and dispatch. We do not publish a fixed model list here; the roster shows the current labels and the limits attached to each named role.
Each limitation links to its entry in the independent C.R.E.E.D. Remediation Registry, which records our governance position and what we are doing about it.
- AI analysis can be mistaken or out of date; consult the linked reporting and primary sources before relying on a result.Remediation ↗
- Bias scoring reflects the LLM's interpretation of language patterns; it may not match human expert consensus in all cases.Remediation ↗
- Geolocation uses source province as fallback when AI confidence is low (<0.5).Remediation ↗
- Not every article receives every analysis pass. Coverage varies by queue and available signals; a missing score is not a neutral or verified result.Remediation ↗
- Outlet bias profiles are rolling averages; new outlets are seeded from editorial stance data and refined over time.Remediation ↗
- Some publishers expose only limited article text; analysis quality and available signals can be affected by that missing context.Remediation ↗
- Scoring methods may not map perfectly to Canadian political framing or expert consensus; treat scores as estimates, not ground truth.Remediation ↗
Coverage changes over time
What The Fact can analyze only the reporting it can ingest. Feed availability and article text vary by publisher; a missing outlet or signal is a coverage gap, not evidence that no reporting exists.
The source directory shows current outlet records and the minimum-sample rule used before displaying an average. For a specific story, follow the source links on its page.
Think we got it wrong?
Flag an article score you believe is inaccurate. A flag is feedback for review; it does not itself change a score or prove an error.
Use the "Flag this score" button on any article page, or POST to /api/v1/flag
Score any text
Try an analysis of submitted text. Available outputs depend on the scorer and its enabled signals; an AI result is a starting point for review, not proof.