Cities: mint every incorporated place as a first-class Jurisdiction node

A city was a string buried in a job title; now it is a node. build.py
mints all 19,513 incorporated Census places (CDPs filtered out — they
are statistical, not governed) as Jurisdiction nodes keyed by place
GEOID, modelled exactly like a county: place + government fused, with
officeholders nested beneath, not a separate Body.

Officeholders join to their city by a name+state match (county-hint
disambiguated) off the same jurisdiction_label that city_slug uses for
placement, so node and people co-locate by construction. 2,229 cities
are filled today (2,217 GEOID-resolved, a 98.8% join); the other 17,289
are truthful skeleton stubs — 'governed, not yet mirrored' — the same
discipline as the nationwide county skeleton.

Deterministic (byte-identical on rerun); classification enum extended
with city/town/village/borough; validation green at 57,185 records.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Fabio
2026-07-06 10:32:38 -04:00
parent 02e77418a6
commit 2747b4826e
2 changed files with 178 additions and 11 deletions
+4 -2
View File
@@ -1,15 +1,17 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "Jurisdiction",
"description": "A place with a government — a county or an electoral district (congressional, state senate, state house) — carrying demographic context and/or district-overlap edges. A node in the fractal jurisdiction tree.",
"description": "A place with a government — a county, an incorporated municipality (city, town, village, borough), or an electoral district (congressional, state senate, state house) — carrying demographic context and/or district-overlap edges. A node in the fractal jurisdiction tree.",
"type": "object",
"required": ["type", "title", "classification", "confidence", "tags", "timestamp"],
"properties": {
"type": { "type": "string", "enum": ["Jurisdiction"] },
"title": { "type": "string" },
"classification": { "type": "string", "enum": ["county", "congressional-district", "state-senate-district", "state-house-district"] },
"classification": { "type": "string", "enum": ["county", "city", "town", "village", "borough", "congressional-district", "state-senate-district", "state-house-district"] },
"fips": { "type": "string" },
"geoid": { "type": "string" },
"state": { "type": "string" },
"counties": { "type": "array" },
"district": { "type": "string" },
"chamber": { "type": "string", "enum": ["senate", "house"] },
"demographics": { "type": "object" },