Vol I . No 42 . Sun 14 Jun 2026 . Morning Edition
The Mayoral RecordRECORD . 2026-06-14
Back

Methodology

This page summarises the extraction methodology. Full version in METHODOLOGY.md.

Pipeline

  1. Triage. Claude Haiku 4.5 reads each post's caption and assigns a bucket (substantive, contextual, or skip) with a stated reason.
  2. Extraction. Claude Opus 4.7 reads substantive posts (with audio transcripts via Deepgram) and emits structured records (positions, pledges, actions, endorsements, appearances, quotes).
  3. Verification. Action records are cross-referenced against the City of Toronto's public council voting record.
  4. Synthesis. Claude Opus 4.7 produces a per-candidate per-topic synthesis paragraph from the extracted records, bound to a tool-use schema that requires every claim be cited.
  5. Chat. Claude Sonnet 4.6 answers reader queries by calling read-only tools that return records, council votes, and synthesis cells. Every answer is stamped to its sources.

Equal-billing rules

  • Candidates listed alphabetically by surname.
  • Identical fields shown for every candidate.
  • No ranking, no editorial weighting.

Synthesis system prompt

The system prompt that generates synthesis paragraphs is reproduced in full so anyone can audit how syntheses are derived. See scripts/lib/synthesis.py for the live prompt.

Chat agent system prompt

The chat agent's system prompt is reproduced in full at web/lib/agent/system-prompt.ts.

Corrections

Open an issue on GitHub if you spot an error.

Policy scenario cards

Some pages on this site analyse contested positions through a Policy Scenario card. Cards live at /scenarios. Each one surfaces who each candidate's mechanism reaches, what Toronto already does, and what comparable cities have shown. Every claim cites its source.

Source-tier system

Every citation on a scenario card carries a tier badge. The four tiers track the actual evidentiary gradient:

  • T1. Primary government data. City of Toronto budget, Auditor General reports, Statistics Canada releases, CMHC, planning department published data, federal and provincial budget documents.
  • T2. Independent analysis. Wellesley Institute, IMFG, OECD, CHRA, Toronto Region Board of Trade, Conference Board, BIA-commissioned studies, investigative journalism with traceable primary sources.
  • T3. Peer-reviewed academic. DOI-bearing journal articles only.
  • T4. Mayoral Record extrapolation. In-house arithmetic or projection. Used rarely. When a card includes a T4 claim, the card carries a methodology paragraph describing assumptions, inputs, and limits.

Editorial discipline

The chat agent retrieves curated cards. It does not generate modeling content at query time. When a question does not match any curated card, the agent says so and the question logs to an editorial backlog. New cards are reviewed before publish, not auto-generated. When the underlying literature does not support a confident singular projection, the card says so explicitly rather than fabricating one.

Receipts

Some pages on this site audit specific verbatim claims about Toronto against Toronto Open Data. Receipts live at /receipts. Each one quotes the verbatim claim with attribution and a link to the primary source, lays out the data with caveats, and explicitly acknowledges what the data does not settle.

Editorial discipline (receipts)

  • Verbatim only. No paraphrasing. Every claim quoted exactly as said, with a primary-source URL.
  • Time-bounded. Claims dated 2024-01-01 or later, within the active 2026 campaign window.
  • Attribution-balanced. The corpus includes claims from each candidate in the race.
  • No editorial commentary in the claim block. The receipt presents the data and lets the data speak.
  • Honest about limits. When data cannot answer the underlying question (subjective experience, perceived quality), the receipt says so explicitly.

Source-tier system (receipts)

Receipts use the same four-tier source system as scenario cards (T1 primary government data, T2 independent analysis, T3 peer-reviewed academic, T4 in-house extrapolation). Each data anchor inside a receipt carries a tier badge.