Methodology
How OpenCity sources, transcribes, enriches, and indexes public meeting records.
Where the records come from
We pull official meeting videos from city platforms — Granicus, CivicPlus, PrimeGov, Swagit, and YouTube — once per city per day. Agendas come from the city's public agenda system. Nothing is republished without an official source.
How transcription works
Every meeting is transcribed with word-level timestamps, then enriched with AI to extract decisions, agenda items, public comments, and civic issues. Transcripts may contain errors; video and original audio remain the authoritative source.
How search works
Search is hybrid — keyword matching plus vector similarity — inside Meilisearch. Results are real records (meetings, agenda items, dev applications). We do not generate AI answers at request time. The summaries on each result card were produced during enrichment and are reviewed periodically.
AI limitations
AI summaries can contain errors. Always verify legal actions, vote counts, and named-person attributions against the official video, transcript, and minutes. Where records are incomplete, we mark the gap rather than guess.
Corrections
Spotted a problem? Email corrections@opencity.dev with a link to the page and a description of the issue. We review every correction and update the affected record.