2e5197d1a3
The diff is the product — now literally. generate_changelog.py reads a
git diff of the entity tree between any two refs and says, in plain
language, what changed in the government: entities added / modified /
removed, grouped by type and by jurisdiction, dated from the commit.
CHANGELOG.md is seeded from the real history so far:
- initial load: +11,285 people across 51 states
- institutional gap: +233 bodies, ~532 people enriched
- elections + demographics: +2,494 candidates, +3,494 jurisdictions
(TX +541, FL +396, CA +341 ...)
On an initial load every entity is an addition; on a re-sync of the same
source, only real government changes will surface — which is the whole
point. When nothing changed, it says so.
make changelog [BASE=.. HEAD=..]. No third-party deps.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
16 lines
574 B
Makefile
16 lines
574 B
Makefile
# Republic OS — repeatable pipeline commands.
|
|
# The build is deterministic: `make build` twice yields a byte-identical tree.
|
|
|
|
.PHONY: build validate check
|
|
|
|
build: ## Regenerate the entity tree from raw exports in data/
|
|
python3 scripts/build.py
|
|
|
|
validate: ## Check every entity file: OKF, schema, and link integrity
|
|
python3 scripts/validate.py
|
|
|
|
changelog: ## What changed in the government since the last commit (BASE/HEAD overridable)
|
|
python3 scripts/generate_changelog.py $(BASE) $(HEAD)
|
|
|
|
check: build validate ## Build, then validate — the full gate
|