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"
# Clackamas County, OR
County jurisdiction.
County jurisdiction — 3 officeholders mapped.
## Demographics (ACS 2023)
@@ -0,0 +1,39 @@
---
type: Person
title: "Sean Drinkwine"
description: "Mayor, Estacada, OR"
role: "Mayor, Estacada, OR"
level: "municipal"
branch: "executive"
state: "OR"
tenure:
start: "2016-11-08"
current: true
ids:
person: "d0142cdf-3009-4500-87a2-ed9be312b33f"
office: "8d09dbd8-85e5-4edc-965d-bebc51722bb7"
tenure: "3fd78e56-49d9-4183-be00-f807fbd2b11a"
jurisdiction: "9d89afbf-877f-40bf-91c6-575b6276a9c4"
sources:
- field: office
source: "Wikidata"
- field: tenure
source: "Wikidata"
- field: jurisdiction
source: "Census TIGER 2024"
confidence: official
tags: [officeholder, municipal, executive, or]
timestamp: "2026-07-04"
---
# Sean Drinkwine
Current Mayor, Estacada, OR.
## 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: "Kent Studebaker"
description: "Mayor, Lake Oswego, OR"
role: "Mayor, Lake Oswego, OR"
level: "municipal"
branch: "executive"
state: "OR"
tenure:
start: "2026-06-20"
current: true
ids:
person: "14d06144-a3f6-44c1-8b70-8f815a3158b4"
office: "a33b61ed-a9c7-4ec0-8eb5-c349abd38662"
tenure: "cd20c7f6-dc63-4999-8af7-334868977ec9"
jurisdiction: "c84d6c7d-3d32-4e5d-8801-3dfd8c3b7469"
sources:
- field: office
source: "Wikidata"
- field: tenure
source: "Wikidata"
- field: jurisdiction
source: "Census TIGER 2024"
confidence: official
tags: [officeholder, municipal, executive, or]
timestamp: "2026-07-04"
---
# Kent Studebaker
Current Mayor, Lake Oswego, OR.
## 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: "Julie Fitzgerald"
description: "Mayor, Wilsonville, OR"
role: "Mayor, Wilsonville, OR"
level: "municipal"
branch: "executive"
state: "OR"
tenure:
start: "2021-01-01"
current: true
ids:
person: "1fef8627-3db1-403f-a5f6-972ff5114283"
office: "c7b69235-c307-4712-ad9d-becb80febd34"
tenure: "0083fde8-67f0-442e-8d56-81ed0acf37c5"
jurisdiction: "0db64671-757b-4fdd-a730-d22122f5f0d1"
sources:
- field: office
source: "Wikidata"
- field: tenure
source: "Wikidata"
- field: jurisdiction
source: "Census TIGER 2024"
confidence: official
tags: [officeholder, municipal, executive, or]
timestamp: "2026-07-04"
---
# Julie Fitzgerald
Current Mayor, Wilsonville, OR.
## Sources
- office: Wikidata
- tenure: Wikidata
- jurisdiction: Census TIGER 2024
Generated from the Atlas officeholders v3 export (2026-07-04).