1. What counts as evidence
Facts on this site come from the kinds of source below. The Elections page names its own sources.
- The City's documents: minutes, agendas and agenda packets published on the City's meetings portal (CivicClerk). The text is read from the City's PDF.
- Motion records read from the minutes: the motion, who moved and seconded it, the named ballots, the result as the minutes print it, and the page where it could be read. A record is published only after it passes the checks in section 3.
- Recording passages verified by listening: a short span of the recording that a person has listened to, recorded word for word with what it establishes (for example, "the chair announced the motion carried 5-0"), and bound to the archived audio file's fingerprint and time. If the audio file changes, the passage is withdrawn.
Two more sources are shown as context only, labelled, and never used to support a fact:
- The recording's machine transcription. It has not been checked against the audio. Removing speaker names does not make it accurate: words, numbers and names can be misheard. It cannot establish who acted, how anyone voted, an amount or an outcome.
- Published news articles, attributed to their publisher.
AI-written summaries, profiles, topic pages and digests are not evidence here. They are not shown, and the answer box does not use them. Articles are written by AI from the records, say so at the top of their pages and link their statements to the records; the records, not the articles, are the evidence.
2. What a meeting page shows
A meeting page shows the City's record: a readable account built only from the validated minutes records, with the minutes' page number where it could be read. It keeps apart:
- adopted action (a motion the minutes record as carried), motions that were not adopted, and motions whose result the minutes' text does not state;
- money: an amount approved in an adopted motion; an amount refused by an adopted motion to deny; an amount listed on an agenda item, which is a proposal and not an approval; and an amount named in a motion that was not adopted;
- the roll call (who the Clerk listed present or absent when the roll was taken), kept apart from participation (who is named on a ballot later in the meeting).
Discussion is not summarised. It is in the minutes' own text and in the recording's text, both linked from the page. Where the City's minutes are not on file, the page states no outcome, vote or attendance.
3. How a minutes record is checked
The minutes are read automatically, and reading can go wrong. Before a record is published it must pass these checks. If it fails one, it is withheld, not guessed:
- the minutes file must be this meeting's own: a file whose printed dates belong to another meeting is not used for this one;
- the motion text must not have absorbed the ballot lines;
- the named ballots must match the printed tally. If they do not, the tally and result are shown and the individual ballots are not;
- the roll call must name the members who later voted. If it does not, the roll is not stated;
- a motion must be bound to its agenda item on the same page. If the binding is doubtful, the agenda item is not named.
Withheld records, and the reason, are kept in a ledger. A correction to a source replaces the record it produced, and pages, search entries, cached answers and notifications built from the old record are retired with it.
4. Search and answers
The answer box on a search page works in three steps. First, an AI model that runs on the project's own computer is shown records found by the archive's tools (the minutes' motions and votes, the City's published rates, budget, candidates, calendar and roster, and the recording transcripts) and chooses which of them answer the question. Second, code checks that the records chosen are ones the AI was shown, that they are the kind of record that can answer the question, and that they hold the words of your question. Third, code writes the sentences from the chosen records' own fields (a name, number, date, vote count, result, status and job title is filled in from the record, and a draft record is marked as such in the same sentence) and quotes their words as printed; no sentence of fact is the AI's. The sentences end with the footnote number of the record they rest on. Below the answer, key facts and the sources are listed, and the records' own words, as printed, are under "Show the exact wording". The label under an answer says that the AI chose the records and code wrote the sentences, or that fixed rules chose them. A question that asks how or whom to vote, and a question that is only a person's name, are never sent to the AI. If the AI is busy or does not finish within 20 seconds, code writes the answer from the records its own search found, or shows the plain list of matching records, and says so. The AI runs on this project's own computer and nothing you type is sent to an outside AI service. The AI can still choose a record that does not answer the question; the footnotes are there so a reader can see the record. A passage from the machine transcription is marked unverified, and a vote, amount, name or quotation is presented as supported only by the City's documents, the minutes records, or a verified recording passage. A saved answer is discarded whenever the evidence it was built from changes.
5. Briefings and email notices
A meeting's briefing can be finalized before its minutes are in the archive: once a person has verified the outcomes by listening to the recording, the briefing states the City's agenda and those verified passages, and says which agenda items have no verified outcome. When the minutes arrive, the minutes record takes over.
A subscriber's email is sent when a meeting's briefing is finalized. It carries only the briefing's lines (from the minutes, or from verified recording passages), with no AI-written text and nothing from the machine transcription.
6. Technical details of the machine transcription
Names of the models, rules and files behind the plain words used on transcript pages
Transcript pages describe a "second machine reading" or "a repair rule" without naming the tools. For anyone who wants them: the first reading of a recording is made with the MLX build of the whisper-large-v3-turbo speech-recognition model; the second, independent reading with the MLX build of whisper-large-v3. A short passage is read again (a "third, targeted" reading) with the first model. The rules that decide what happens to a passage are named repair-N (replace one word where two further readings agree), stability-N (a repetition or a silence that the first reading handled badly) and loop-N (a repetition loop, which is not speech); accept-10 is the rule for admitting the second reading as an alternative. The good and the harm a repair rule does are measured on audio-checked reference clips and kept, candidate by candidate, in the project's repair_calibration.json.
7. Limits
- Meetings without minutes on file have no record brief. Where the recording was transcribed, its text is shown.
- A motion written in a form the reader does not recognise can be missing from the record. The minutes the City publishes are the official record.
- The machine transcription mishears words, including names and numbers. Never treat anything in it as a record of who acted or what was decided.
Found an error? See corrections. Other current limits are on the known limitations page.