Independent project, 2026
Aura
Public data about a city's air, health, and schools is free, but it's scattered across federal datasets and written for specialists. I built briefs anyone can read, without letting the model say what the data doesn't.
The problem
An LLM can turn a page of federal statistics into a paragraph a city council member will actually read. It can also call a moderate asthma rate "high" because "high" makes a better sentence.
For a non-technical reader, a confident wrong sentence is worse than no summary at all.
How it works
- Badges are the ground truth. Each metric gets a status, like "moderate," computed in code from the source data. The model never assigns one.
- The prose is commentary on the badges. The LLM writes each section with the badges as fixed inputs, so its characterizations have to agree with them.
- An audit layer checks that it did. Briefs are reviewed against their badges, and new metrics go through a research, propose, and approve workbench before they reach a brief.
- It runs at national scale. Any of about 30,000 Census places can get a brief on demand, with fuzzy search, peer-city rankings, trend language, and cached generation that refreshes in the background.
What I'm still fixing
A school-district matcher once paired a large city with a much smaller district nearby, and prose can still drift from a badge, like calling a moderate rate "high." Both are exactly the errors the audit layer exists to catch, and catching them is how I tighten it.
Why it matters to me
Civic data should be traceable, consistent, and readable by the people who make decisions with it. That's the same job I do with AI inside client operations.