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"
# Woodbury County, IA
County jurisdiction.
County jurisdiction — 5 officeholders mapped.
## Demographics (ACS 2023)
@@ -0,0 +1,39 @@
---
type: Person
title: "Ken Bauer"
description: "Mayor, Correctionville, IA"
role: "Mayor, Correctionville, IA"
level: "municipal"
branch: "executive"
state: "IA"
tenure:
start: "2026-06-20"
current: true
ids:
person: "59b37e3e-a1d0-4acf-aac6-39f0215e54ff"
office: "d5259856-88bf-4e6d-840d-8e96b62fb3a3"
tenure: "417e53d2-05e4-4c98-9ab3-b21579b3fa81"
jurisdiction: "016d42c4-5977-4849-89af-cb7f418900ca"
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"
---
# Ken Bauer
Current Mayor, Correctionville, 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: "Jesse Pedersen"
description: "Mayor, Lawton, IA"
role: "Mayor, Lawton, IA"
level: "municipal"
branch: "executive"
state: "IA"
tenure:
start: "2026-06-20"
current: true
ids:
person: "70e3c2af-6913-4124-ad35-6db0f0c914f7"
office: "f55a825c-74b6-4f98-81ad-eed78c5c2147"
tenure: "f71f0785-c07f-47ee-b5d9-71567b5f97e6"
jurisdiction: "9256ccc5-554d-4756-a79b-f6f36d105eff"
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"
---
# Jesse Pedersen
Current Mayor, Lawton, 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: "Jon Winkel"
description: "Mayor, Sergeant Bluff, IA"
role: "Mayor, Sergeant Bluff, IA"
level: "municipal"
branch: "executive"
state: "IA"
tenure:
start: "2022-01-01"
current: true
ids:
person: "1aa84868-5148-428c-b182-6009b84d60e6"
office: "04af49b5-540b-46d8-8b24-f85adcf00e29"
tenure: "c1a6ef3c-e9a0-4c73-a38f-a9d4086a13fa"
jurisdiction: "695f004b-c63f-49ac-bfd8-d1686370652b"
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"
---
# Jon Winkel
Current Mayor, Sergeant Bluff, 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: "Bob Scott"
description: "Mayor, Sioux City, IA"
role: "Mayor, Sioux City, IA"
level: "municipal"
branch: "executive"
state: "IA"
tenure:
start: "2026-06-20"
current: true
ids:
person: "75153094-a5b7-4fc1-b7f6-76e85ca8db73"
office: "f870613f-a523-49dc-bb4e-7d52dc34966b"
tenure: "6ed28eed-06a4-46e7-9c83-759637aa775f"
jurisdiction: "66c44f57-2db7-4c2c-a6d5-b2c9b75a95f5"
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"
---
# Bob Scott
Current Mayor, Sioux 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: "Charles Thorpe"
description: "Mayor, Sloan, IA"
role: "Mayor, Sloan, IA"
level: "municipal"
branch: "executive"
state: "IA"
tenure:
start: "2026-06-20"
current: true
ids:
person: "546d3075-acf6-48a3-a431-64ca52eb265f"
office: "3fd94984-403d-4c65-9069-c34652f3d611"
tenure: "a3620118-ddd8-4cca-8d21-1887f5ca0ba9"
jurisdiction: "dd038900-58a7-4e5c-80a8-f7b38cd9023a"
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"
---
# Charles Thorpe
Current Mayor, Sloan, IA.
## Sources
- office: Wikidata
- tenure: Wikidata
- jurisdiction: Census TIGER 2024
Generated from the Atlas officeholders v3 export (2026-07-04).