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"
# Clark County, WA
County jurisdiction.
County jurisdiction — 3 officeholders mapped.
## Demographics (ACS 2023)
@@ -0,0 +1,39 @@
---
type: Person
title: "Troy McCoy"
description: "Mayor, Battle Ground, WA"
role: "Mayor, Battle Ground, WA"
level: "municipal"
branch: "executive"
state: "WA"
tenure:
start: "2024-01-01"
current: true
ids:
person: "eaf4347a-0932-428a-879a-091c6629d222"
office: "25063738-6002-4109-9b80-5a1085b8925a"
tenure: "d03b0437-77ea-4ed5-bfa1-e0abcf2d85f0"
jurisdiction: "02f48148-e87c-449e-bb44-689b7251f6a7"
sources:
- field: office
source: "Wikidata"
- field: tenure
source: "Wikidata"
- field: jurisdiction
source: "Census TIGER 2024"
confidence: official
tags: [officeholder, municipal, executive, wa]
timestamp: "2026-07-04"
---
# Troy McCoy
Current Mayor, Battle Ground, WA.
## 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: "Steve Hogan"
description: "Mayor, Camas, WA"
role: "Mayor, Camas, WA"
level: "municipal"
branch: "executive"
state: "WA"
tenure:
start: "2024-01-01"
current: true
ids:
person: "17b08940-5bca-46eb-b7a4-f8b373228805"
office: "a19b806a-4a36-49a7-a0d4-57c8c21107fe"
tenure: "27fa53b6-884b-4ecf-9e2f-4648300a9b34"
jurisdiction: "15b1d145-d0af-4530-a074-cfd1b907605d"
sources:
- field: office
source: "Wikidata"
- field: tenure
source: "Wikidata"
- field: jurisdiction
source: "Census TIGER 2024"
confidence: official
tags: [officeholder, municipal, executive, wa]
timestamp: "2026-07-04"
---
# Steve Hogan
Current Mayor, Camas, WA.
## 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: "Anne McEnerny-Ogle"
description: "Mayor, Vancouver, WA"
role: "Mayor, Vancouver, WA"
level: "municipal"
branch: "executive"
state: "WA"
tenure:
start: "2018-01-01"
current: true
ids:
person: "4c585b1a-26a9-4ff1-a926-5a8ee7585245"
office: "43e8afb8-1c6c-4230-8895-e16b8e111eeb"
tenure: "3115631b-1caa-4de8-8c5b-aee02fd15796"
jurisdiction: "1ce453a5-1006-4ae5-9ce8-21ae4579987d"
sources:
- field: office
source: "Wikidata"
- field: tenure
source: "Wikidata"
- field: jurisdiction
source: "Census TIGER 2024"
confidence: official
tags: [officeholder, municipal, executive, wa]
timestamp: "2026-07-04"
---
# Anne McEnerny-Ogle
Current Mayor, Vancouver, WA.
## Sources
- office: Wikidata
- tenure: Wikidata
- jurisdiction: Census TIGER 2024
Generated from the Atlas officeholders v3 export (2026-07-04).