Lawrence & Kansas Civic ReportsHomeWhy Kansas power projects waitKansas peak power demandHome energy costs in Douglas CountyData centers and Kansas home electric billsIs Lawrence's new building code adding homes?How Lawrence fixes streets and pipesAll amendmentsTransit report
Lawrence streets and pipes

Methods and how this was made

Made by AI agents, with a person directing and checking the work.

Questions

How does Lawrence decide which streets, water mains and pipes to fix? How large is the maintenance backlog? Where does the city stand on lead service lines? What would different choices cost?

Data

Steps

  1. Extract text from the plan PDF. Read each project and its funding lines from the Project Summary table, and check that the sums equal the printed totals (A1).
  2. Read each project sheet's Type, ten sub-scores, Total Score and Total Project Cost. Check that the sub-scores add up to the printed total.
  3. Assign each project to a system category (A2) and add up funded and unfunded dollars.
  4. Sum city-owned water-main length by material and install decade; map it.
  5. Count service-line records by material on the city and customer sides; compare with the city's reported inventory.
  6. Build scenarios from the plan's own figures, one local contract price and EPA unit costs (A5-A7).

Checks (run before every build: checks/run_checks.py)

  1. No silent blanks in key fields; no duplicate project funding lines.
  2. Control totals: parsed CIP funded and unfunded dollars equal the printed plan totals exactly. Score sub-totals equal the printed Total Score for every project.
  3. External reality check: the GIS galvanized and lead counts are within 10% of the city's corrected inventory (130 galvanized, 2 lead), and GIS main mileage is between 400 and 600 miles.
  4. Provenance: every data file is listed in sources.md; every output has a sidecar file.
  5. History freshness; raw data read-only; no empty files.
  6. Questionable results flagged: GIS blanks versus the city's single "unknown"; break data unavailable.

How this was made

This site was researched, analyzed and written by AI agents, with a person directing and checking the work. The agents downloaded the public documents and GIS layers above, wrote Python scripts (pandas, matplotlib, geopandas) to extract and total the figures, and drafted the text. Every number comes from those scripts or is quoted from a cited city document. A guardrail script must pass before the site is built, and a security audit runs before anything is published. The process follows the one used for an earlier Lawrence transit-access study. Corrections are logged on the Amendments page.

Assumptions

Work done 2026-10-25 (America/Chicago). Plan years 2027-2031. CIP adopted 2026-09-15 (Resolution 7705, 3-2).