Municipals: nest 1,823 city officeholders under their real counties

Pull Atlas's place→county crosswalk (Census TIGER 2024 places × county
geometries, 32,041 places) into the build as a committed raw input, and
use it to resolve municipal officeholders whose county was unknown.

- data/place_county_crosswalk.jsonl — new raw input (place_geoid → county_geoid)
- build.py — place-name+state → county_geoid → ACS county slug as a fallback
  in county_slug(); city_slug() generalized to non-FL bare place labels
- data/sources/sources.yaml — provenance entry for the crosswalk

_unresolved municipals: 1919 → 58. The remainder are genuine: CT planning
regions (post-county), county-level rows mislabeled municipal upstream,
consolidated city-counties (null label), Wikidata-QID placeholder names,
and ambiguous same-name places — left unresolved rather than guessed.

Join key is county_geoid (5-digit FIPS); the directory slug is taken from
the ACS county node so municipals nest under the exact existing county dir.
Deterministic (byte-identical rebuild); validate.py passes 19,721 records.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Fabio
2026-07-04 20:23:57 -04:00
parent ad7607856d
commit 199d8b37d3
2893 changed files with 33094 additions and 995 deletions
@@ -32,7 +32,7 @@ timestamp: "2026-07-03"
# Jasper County, IA
County jurisdiction.
County jurisdiction — 7 officeholders mapped.
## Demographics (ACS 2023)
@@ -0,0 +1,39 @@
---
type: Person
title: "Doug Bishop"
description: "Mayor, Baxter, IA"
role: "Mayor, Baxter, IA"
level: "municipal"
branch: "executive"
state: "IA"
tenure:
start: "2026-06-20"
current: true
ids:
person: "16693f5c-27ad-47f9-9938-1695240101e0"
office: "669d2df9-f2b1-4c81-bc76-951c08f3b504"
tenure: "8b4be5b8-55e9-4d53-80f2-525ca0e9b802"
jurisdiction: "ae83d8da-7d43-4264-af44-e22264d1ce5c"
sources:
- field: office
source: "Wikidata"
- field: tenure
source: "Wikidata"
- field: jurisdiction
source: "Census TIGER 2024"
confidence: official
tags: [officeholder, municipal, executive, ia]
timestamp: "2026-07-04"
---
# Doug Bishop
Current Mayor, Baxter, IA.
## Sources
- office: Wikidata
- tenure: Wikidata
- jurisdiction: Census TIGER 2024
Generated from the Atlas officeholders v3 export (2026-07-04).
@@ -0,0 +1,39 @@
---
type: Person
title: "David Mast"
description: "Mayor, Colfax, IA"
role: "Mayor, Colfax, IA"
level: "municipal"
branch: "executive"
state: "IA"
tenure:
start: "2026-06-20"
current: true
ids:
person: "c1697ffe-2a66-482a-bf71-47ecf11eede2"
office: "0157dd7c-b59d-4171-85ab-82fb5be262df"
tenure: "7ba3ef0d-e4bc-495b-a2d7-818a93bf73e1"
jurisdiction: "42c1d267-1588-469c-b97e-519ecce7aa0e"
sources:
- field: office
source: "Wikidata"
- field: tenure
source: "Wikidata"
- field: jurisdiction
source: "Census TIGER 2024"
confidence: official
tags: [officeholder, municipal, executive, ia]
timestamp: "2026-07-04"
---
# David Mast
Current Mayor, Colfax, IA.
## Sources
- office: Wikidata
- tenure: Wikidata
- jurisdiction: Census TIGER 2024
Generated from the Atlas officeholders v3 export (2026-07-04).
@@ -0,0 +1,39 @@
---
type: Person
title: "Roy James"
description: "Mayor, Lynnville, IA"
role: "Mayor, Lynnville, IA"
level: "municipal"
branch: "executive"
state: "IA"
tenure:
start: "2026-06-20"
current: true
ids:
person: "248717a0-77a4-4c3f-85fe-85b62e8c31aa"
office: "3b800720-c629-4f15-aa86-7cdfaa27e2ba"
tenure: "28c94e8d-9ac1-4bef-bee5-4ee8a87a6996"
jurisdiction: "d92dfbe7-0e34-4b80-8d79-4a5ff1b08694"
sources:
- field: office
source: "Wikidata"
- field: tenure
source: "Wikidata"
- field: jurisdiction
source: "Census TIGER 2024"
confidence: official
tags: [officeholder, municipal, executive, ia]
timestamp: "2026-07-04"
---
# Roy James
Current Mayor, Lynnville, IA.
## Sources
- office: Wikidata
- tenure: Wikidata
- jurisdiction: Census TIGER 2024
Generated from the Atlas officeholders v3 export (2026-07-04).
@@ -0,0 +1,39 @@
---
type: Person
title: "Doug Duinink"
description: "Mayor, Monroe, IA"
role: "Mayor, Monroe, IA"
level: "municipal"
branch: "executive"
state: "IA"
tenure:
start: "2026-06-20"
current: true
ids:
person: "a3b91097-4c9a-4105-84c1-ce0407919a00"
office: "380d0346-ce91-42ac-8bfb-c07b4af0b8d7"
tenure: "9f4765f3-aa6d-428e-b7e9-eff6de4ae0fe"
jurisdiction: "86894c5f-c829-49dc-a1fd-c81c8fe7cf32"
sources:
- field: office
source: "Wikidata"
- field: tenure
source: "Wikidata"
- field: jurisdiction
source: "Census TIGER 2024"
confidence: official
tags: [officeholder, municipal, executive, ia]
timestamp: "2026-07-04"
---
# Doug Duinink
Current Mayor, Monroe, IA.
## Sources
- office: Wikidata
- tenure: Wikidata
- jurisdiction: Census TIGER 2024
Generated from the Atlas officeholders v3 export (2026-07-04).
@@ -0,0 +1,39 @@
---
type: Person
title: "Evelyn George"
description: "Mayor, Newton, IA"
role: "Mayor, Newton, IA"
level: "municipal"
branch: "executive"
state: "IA"
tenure:
start: "2023-01-01"
current: true
ids:
person: "e748d229-124b-4df8-aa35-938a6c270a5a"
office: "ec98fb67-6b0b-490c-8471-1f226692b511"
tenure: "f69ffb87-e4f6-482b-b224-9e40e876d8b4"
jurisdiction: "ac3e4c69-76a5-4d19-a974-aeddbc20b8d9"
sources:
- field: office
source: "Wikidata"
- field: tenure
source: "Wikidata"
- field: jurisdiction
source: "Census TIGER 2024"
confidence: official
tags: [officeholder, municipal, executive, ia]
timestamp: "2026-07-04"
---
# Evelyn George
Current Mayor, Newton, IA.
## Sources
- office: Wikidata
- tenure: Wikidata
- jurisdiction: Census TIGER 2024
Generated from the Atlas officeholders v3 export (2026-07-04).
@@ -0,0 +1,39 @@
---
type: Person
title: "Chad Alleger"
description: "Mayor, Prairie City, IA"
role: "Mayor, Prairie City, IA"
level: "municipal"
branch: "executive"
state: "IA"
tenure:
start: "2026-06-20"
current: true
ids:
person: "9584cfb2-b9a8-41bc-84df-55b0540db650"
office: "d047f563-5ec7-4e54-bbd1-b90697d239df"
tenure: "9226e57d-8605-451f-926c-6296b62ac7d6"
jurisdiction: "fd45de3b-744e-4d7b-b558-73f2d0c0442c"
sources:
- field: office
source: "Wikidata"
- field: tenure
source: "Wikidata"
- field: jurisdiction
source: "Census TIGER 2024"
confidence: official
tags: [officeholder, municipal, executive, ia]
timestamp: "2026-07-04"
---
# Chad Alleger
Current Mayor, Prairie City, IA.
## Sources
- office: Wikidata
- tenure: Wikidata
- jurisdiction: Census TIGER 2024
Generated from the Atlas officeholders v3 export (2026-07-04).
@@ -0,0 +1,39 @@
---
type: Person
title: "Ben Ahrens"
description: "Mayor, Sully, IA"
role: "Mayor, Sully, IA"
level: "municipal"
branch: "executive"
state: "IA"
tenure:
start: "2026-06-20"
current: true
ids:
person: "c6d76d62-7098-4145-8e26-780d97ff4a96"
office: "b298b7a4-5110-4fac-92d1-542fb2535156"
tenure: "251fb633-a770-4934-bfa9-7032654e2376"
jurisdiction: "8b1e15de-47a8-4668-ba7e-c4780d8e6c72"
sources:
- field: office
source: "Wikidata"
- field: tenure
source: "Wikidata"
- field: jurisdiction
source: "Census TIGER 2024"
confidence: official
tags: [officeholder, municipal, executive, ia]
timestamp: "2026-07-04"
---
# Ben Ahrens
Current Mayor, Sully, IA.
## Sources
- office: Wikidata
- tenure: Wikidata
- jurisdiction: Census TIGER 2024
Generated from the Atlas officeholders v3 export (2026-07-04).