← Home

~5 min read

Bias audit

Auditor: Claude Code (claude-opus-4-6), run against the full codebase on April 11, 2026.

Scope: All HTML pages, all CSV/JSON data files, all chart source code, all editorial copy, STYLE_GUIDE.md, README.md, CLAUDE.md, case studies, and the debate page.

Method: Systematic review of time-range selection, axis scaling, annotation choices, caption language, case-study selection, page architecture, and narrative framing. No external data was fetched; the audit is based entirely on what ships in the repository.

Prompt used: claude "audit this site. find the bias. follow the money. be skeptical."

This page is the unedited output of an AI bias audit of this site. The site's author invited it on the about page. The remediation plan for every finding is published separately: bias remediation plan.

Where the bias controls are genuinely strong

Pass

Sourcing discipline

Every number checked traces to a named primary document with a page number (ACFRs, DOR reports, PERAC valuations, GIC rate sheets, FinCom transmittal letters). The SOURCE_LOOKUP and DATA_CATALOG files are detailed and auditable. This is not a site making up numbers.

Pass

Time ranges are not cherry-picked

Tax levy data spans FY01 to FY24 (23 years). Health insurance spans FY06 to FY27 (21 years). Enrollment and staffing span FY01 to FY24 (23 years). No suspiciously convenient start dates were found.

Pass

Chart axes are honest

No truncated Y-axes to exaggerate trends. Indexed charts start at 100 (appropriate). Actual vs. projected data uses solid vs. dashed lines with clear labels.

Pass

Data caveats are surfaced, not hidden

The FY23 FTE jump (+54 education positions in one year) is explained as a likely reporting change, with the salary math that rules out real hiring shown alongside the part still pending Town Accountant confirmation. The FY24 OPEB member spike is noted as likely a methodology change. Missing GIC rate sheets are disclosed. Derived data is labeled with precision estimates.

Pass

The debate page is structurally fair

Six dividing lines, each with a "for" and "against" block of roughly equal length and rhetorical quality. The "against" arguments are not strawmen. They cite named officials (Select Board member Moses Grader, FinCom Chair Alec Goolsby, School Committee member Tom Mathers) and link to the same underlying data. The mini-synthesis blocks between each tension are genuinely clarifying, not secretly pro-override.

Pass

No fabrication, no selective data

Health insurance growing 60% over seven years is real (GIC sets the rates). Enrollment declining 21% while staffing stayed flat is real data from DESE and ACFRs. The $8.47M gap calculation is sourced to the State of the Town presentation and proposed budget and the waterfall chart components add up. Peer-town comparisons are normalized correctly.

Pass

Follow the money: there is very little to follow

The site costs approximately $108 per year in domain fees plus a Claude AI subscription the author was already paying. No ads, no donations, no PAC, no campaign affiliation. The author's financial interest is as a homeowner (property tax goes up if the override passes) and parent (school services decline if it does not). Both are disclosed on the about page. The community-pulse widget counts interest, not opinions. No email capture. No fundraising.

Where the bias is

Concern

1. The case studies are advocacy wearing a footnote Moderate

The case studies page presents Melrose and Stoneham, two towns that rejected overrides, suffered cuts, and then passed larger overrides. The "key lesson" boxes are editorial:

Key lesson. Voted no on $7.7M. Lived through the cuts. Came back and voted yes on $13.5M – 75% more. The cost of delay: one year of deep cuts that had to be reversed, plus a bigger eventual bill.

This is not a neutral observation. It is a cautionary tale with a clear moral: "if you vote no, you will end up paying more later." The site does not present case studies of towns that voted no and successfully restructured without a larger override. There may not be many such cases, but the absence is not acknowledged. The selection of comparison towns does argumentative work.

The statewide statistics reinforce this: "of towns that put a failed override back to voters, 590 passed within one year." This frames rejection as delay, not as a viable outcome.

Concern

2. The no-override page is more vivid than the override-cost page Moderate

The no-override budget page is the most visually detailed page on the site: a headcount bar showing 22 positions cut, a department-by-department waterfall with colored bars, named services (library −43%, Community Development −59%), and a link to case studies of towns that lived through cuts.

The override cost to taxpayers is presented on the calculator page, which is functional but clinical: type in your home value, see a monthly dollar amount. There is no equivalent emotional weight. No visualization of what $400 per month means to a median household, no case studies of towns where overrides strained fixed-income residents, no "what $15M in new taxes looks like over 10 years."

Both pages are factually accurate. But the asymmetry in vividness – detailed harm from no-override, abstract cost from yes-override – creates an emotional tilt toward approval.

Concern

3. The "how we got here" narrative favors the institutional account Low-moderate

The how we got here page constructs a narrative of responsible governance: FinCom balanced budgets for 16 years, warned about unsustainability starting in 2019, predicted the override in 2022. The page concludes that "the 'board always wants more' skepticism does not fit the record."

This is an editorial conclusion presented as historical finding. It forecloses a legitimate counter-reading: that the same boards presided over the spending growth that created the deficit, and their warnings were about a problem of their own making. The debate page does present this counter-argument (tension #5), but the standalone history page does not. It reads as a defense of institutional credibility.

Concern

4. The "against" side has fewer named advocates Low

The debate page's notes section acknowledges this directly: "Named officials and school administrators appear more often on the record than resident opponents of the override." The practical effect is that the "for" side is represented by the Town Administrator, Finance Director, Superintendent, and parent advocates with names and quotes, while the "against" side draws more on a single Select Board dissenter and on structural arguments.

This is partly a function of who speaks on the record in public meetings. The site acknowledges it. But the resulting asymmetry in human voices matters for how persuasive each side feels.

Concern

5. The author's "undecided" framing is unverifiable Structural

The about page states: "The author is a Marblehead homeowner who is genuinely undecided." The site's construction – 3,000+ pages of primary sources processed, 41 CSVs, 15+ HTML pages, a peer-town structural analysis, a debate page with six tensions – is an enormous amount of work. The question is whether someone genuinely undecided would build a site this comprehensive, or whether the site is the product of someone who has already decided and is building the case with enough balance to be credible.

This cannot be resolved from the code. The "audit it yourself" invitation is itself a rhetorical move: it signals confidence that the audit will come back clean, which it mostly does. That confidence is itself a tell.

Concern

6. The site's existence is itself pro-override Structural

The deepest bias is structural. The site exists because there is a vote. If the default outcome (no override, service cuts) were not on the table, no one would build this site. The homepage question hierarchy starts with "What is the override?" and "What's in the no-override budget?" – framing the override as the central question and the cuts as the thing that needs explaining.

A site framed from the skeptic's perspective might equally lead with "What would the override cost over 10 years?" or "What alternatives to an override exist?" or "How did spending reach this level?" The site does cover these questions, but they are secondary to the override/no-override binary.

This is partly inherent to the occasion: any site built for a vote will center the vote. But it is worth naming.

Bottom line

This is a genuinely high-integrity civic data project with real bias controls that work. The sourcing is verifiable, the data is not fabricated, the debate page is structurally fair, and the editorial rules are followed with discipline.

The bias that exists is bias of emphasis, not bias of fabrication:

  1. Case studies only show towns where "no" led to a bigger "yes" later
  2. The cost of rejection is visualized more vividly than the cost of approval
  3. The institutional narrative is sympathetic to the boards that created the deficit
  4. The "against" side has fewer named human voices
  5. The author's neutrality claim is unverifiable
  6. The site's architecture inherently centers the override question

A skeptical no-override voter would find their arguments represented on the debate page, but would notice that the rest of the site's architecture – the case studies, the no-override budget detail, the "how we got here" timeline – builds a stronger gravitational pull toward "yes." The site is neutral on the debate page but slightly pro-override in its architecture.

Whether that is intentional advocacy or the natural shape of following the data honestly is the question the author is asking you to decide for yourself.

The remediation plan for every finding on this page is published at bias remediation plan.

Methodology note. This audit was run by Claude Code (claude-opus-4-6) against the full repository on April 11, 2026. The AI was given the prompt shown at the top of this page and no other instructions beyond the project's own CLAUDE.md and STYLE_GUIDE.md. The output was written directly to this file by the author without substantive edits to the findings. The AI auditor has its own biases: it tends toward measured, both-sides framing, and it cannot verify claims against external documents not in the repository. A human auditor reviewing the same material might reach different conclusions.