Updated September 2, 2026— search the minutes, three small fetches

Reports and analyses

12 documents written by this project, from records the town and district published and from documents obtained by request. Each one is published as a web page, a PDF and its source text, and most are checked by a script that recomputes every figure in them.

Read this first

Written by this project, not by the town or the district.

Nothing on this page is an official document. These analyses are written here, from documents the town and district published and from records obtained by request. They have not been reviewed or endorsed by the Town of Lunenburg, the Lunenburg School Committee, the Finance Committee or Lunenburg Public Schools, and this project is not affiliated with any of them.

Every figure in an analysis is recomputed from the underlying data by a script, and the script is named on the row. The data itself is published below — you do not have to take any of this on trust, and you should not.

Where an earlier version of an analysis was wrong, the correction stays in the text rather than being edited out. Several of these documents describe their own earlier errors.

The documents

Every analysis

Newest first among the current work. Each row links the readable version, the printable one, the source text with its checksum, and — where one exists — the command that reproduces every figure in it from the database.

  • FY26, as the books stood in June

    8,378 words · updated 2026-09-02

    The school department’s FY26, read line by line from the town’s own ledger. What the $482,101 headline actually is, and three things it cannot explain.

    Read itPDF 799 KBSource text✓ every figure recomputed by python3 scripts/verify_fy26_closeout.py

    sha256 c780f91f702401575b1b6ebbf94136ddc90a3620d4be8f7faf31814065e7541f

  • FY26 on the town side, as the books stood in June

    4,306 words · updated 2026-09-02

    The same ledger read for the other 67 departments. Snow at 292% of its appropriation, a Reserve Fund never touched, and school costs sitting on the town’s books.

    Read itPDF 572 KBSource text✓ every figure recomputed by python3 scripts/verify_fy26_closeout_town.py

    sha256 c795329e63c4b2f07d125a01813bc783ef24ea0b48934b2acdf2bb0bc6369e5c

  • Budget versus actual

    5,670 words · updated 2026-08-29

    Did the money the town budgeted match the money it spent? Careful about what the documents can and cannot support.

    Read itPDF 441 KBSource text✓ every figure recomputed by python3 scripts/verify_budget_vs_actual.py

    sha256 8f3e4e7199a727e228e585f2f01e0539487235b7478d8c8cf500f9a7078ca5ac

  • Free cash: is Lunenburg hoarding, or rebuilding?

    2,924 words · updated 2026-08-30

    How much of Lunenburg’s certified free cash is genuinely spendable, built from the state’s own proofs for nine towns.

    Read itPDF 313 KBSource text✓ every figure recomputed by python3 scripts/verify_free_cash.py

    sha256 790b2f3d1500baaec6a19d0bcb82398e1382cb91e6f9339a3a7d1f6f343b3820

  • Athletics: what it costs, who pays, and what the budget line does not say

    7,334 words · updated 2026-08-29

    The one programme where both sides of the money are visible, and therefore the only place the net-versus-gross problem can be measured rather than described.

    Read itPDF 722 KBSource text✓ every figure recomputed by python3 scripts/verify_athletics.py

    sha256 4367d1d8fb11b4185b558a94404fe7f6359deb371e85586f31b34bc2db0bff52

  • The athletics ledger: what a fund's cashbook shows that a budget line cannot

    4,295 words · updated 2026-08-29

    Three years of the athletics revolving fund at transaction level, from a records request. Includes $254,121.18 described only as “per memo”.

    Read itPDF 363 KBSource textno verifier script — figures checked by hand

    sha256 5a555381965d4f67dfc61d40ebe003164fb1d36327cf26c09ba96046656f3201

  • Special education and the curve

    6,808 words · updated 2026-08-29

    Special education is about 22% of the budget and the largest single driver of the gap. What the rates rest on.

    Read itPDF 540 KBSource textno verifier script — figures checked by hand

    sha256 1569eb3d4c4b70a0a77dd3d2194605e78add1f369e8540d2e2f92e138450d6cf

  • Special education, and the money outside the operating budget

    3,887 words · updated 2026-08-28

    Whether the special education escalator can be distinguished from grant money unwinding. It currently cannot, and this says why.

    Read itPDF 412 KBSource textno verifier script — figures checked by hand

    sha256 e15cb5aad9fda3548fa64902298ebac12891187b84b069dc0ef6ad3cdf766086

  • Lunenburg FY28 — What the source data says (research notes, Aug 2026)

    1,413 words · updated 2026-08-28

    What the FY27 budget did, what the override would have done, and what the votes actually decided.

    Read itPDF 289 KBSource textno verifier script — figures checked by hand

    sha256 ecd22c4236375ad1c8037e225f90964dc994c0f4960ecef36e23993a4748c281

  • Two right numbers

    807 words · updated 2026-08-28

    Reconciling the district’s published cut list against its own budget columns.

    Read itPDF 226 KBSource textno verifier script — figures checked by hand

    sha256 292cf06ead505b654da6b3c1e210912227d5de73ee3653b5a66292ac98557970

  • What comparable districts actually cut, and in what order

    1,274 words · updated 2026-08-29

    What six neighbouring districts did with the same year, and what that does and does not tell you about Lunenburg.

    Read itPDF 251 KBSource textno verifier script — figures checked by hand

    sha256 ab6bdb11829ac11648675e41d0e840943ad61320d83faef5cbe594f839c0f961

  • Show your work

    16,033 words · updated 2026-08-30

    Every calculation the site publishes, with its inputs, its formula, a worked example, and whether each figure is published, contractual, statutory, our measurement or our assumption.

    Read itPDF 973 KBSource textno verifier script — figures checked by hand

    sha256 e545e26c157b9fa6c3044aac6dfbbc75f19260d12b22336af85e1a3233c51823

What changed

Version 9.2 — updated September 2, 2026