Parvez PothiawalaData trackers & dashboards

The method

A governed data system, not a pretty chart.

The charts are the fun part. The real work comes before them: deciding what the data is allowed to look like, collecting it from sources that don't agree, and checking it hard enough that a stranger can trust the number on the screen.

Five stages from raw feed to live page

1

Collect

Scheduled pulls from each source of record, within its terms and limits. Where a source blocks automated access, I ask. Every file is archived as fetched.

2

Normalize

One schema per board. Duplicates removed, every value mapped onto a fixed list.

3

Classify

AI reads what people can't at volume, with a keyword fallback. Every label traces to its source.

4

Verify

Machine checks on totals and schema. Human review wherever a claim is made. A failed check blocks the update.

5

Publish

Only a passing build deploys. A failed run publishes nothing and the last good version stays up.

Checked as a guarantee, not a habit

The checks are wired into the deploy itself. On the midterms board, every weekly update clears four independent layers before it reaches the public site.

Read the public corrections log

  1. Layer 1 · WeeklyIndependent AI fact-check. Separate agents re-research each claim without seeing the original sources.
  2. Layer 2 · WeeklyHuman review. Every change ships in a briefing with source links. Nothing applies until it is approved.
  3. Layer 3 · Every changeDeterministic validation. The House must total 435, the Senate 100, and every rating must be on the fixed scale.
  4. Layer 4 · Every applyPost-publish assertion. A job re-reads the live data and confirms it matches what was approved.

Where AI does the work, and where it doesn't

It does

  • Read at volume: tagging hundreds of articles to a fixed theme list.
  • Fact-check independently, from scratch.
  • Draft the weekly briefing, with a source link for every proposed change.

It doesn't

  • Write to published data. Every write goes through validated, deterministic code.
  • Set a rating. Professional forecasters do, under a published rule.
  • Ship a change unreviewed. A person approves every update.

Under the hood

Plain, inexpensive tools. Your team works in the Google Sheet; the rest runs on a schedule and is documented for whoever maintains it.

  • Python
  • GitHub Actions
  • Google Sheets
  • JSON schemas
  • RSS ingestion
  • Claude
  • React
  • Chart.js
  • Cloudflare Workers

See the method running on three live boards.