Skip to content

Bump policyengine-uk to >=2.89.1 so bus_fare_spending lands in the dataset#429

Merged
vahid-ahmadi merged 2 commits into
mainfrom
bump-pe-uk-for-bus-fare
Jun 17, 2026
Merged

Bump policyengine-uk to >=2.89.1 so bus_fare_spending lands in the dataset#429
vahid-ahmadi merged 2 commits into
mainfrom
bump-pe-uk-for-bus-fare

Conversation

@vahid-ahmadi

Copy link
Copy Markdown
Collaborator

What

Updates uv.lock (and the pyproject.toml floor) to policyengine-uk >=2.89.1.

Why

bus_fare_spending is imputed (#428) but absent from the published HF dataset (only bus_subsidy_spending is present). Root cause: the build runs uv sync --frozen, which installs the locked policyengine-uk — 2.86.0 — and that version predates the bus_fare_spending input variable (added in 2.89.1, PolicyEngine/policyengine-uk#1780). Built against 2.86.0 the model doesn't know the variable, so the imputed column is dropped when the dataset is materialised through the model and never reaches the saved .h5.

Note the >=2.86.0 floor already allowed 2.89.1 — the blocker was the lockfile pin, which --frozen installs verbatim. The uv.lock update is the fix; the floor bump just documents the true minimum so a re-resolve can't silently drop below it.

uv lock --upgrade-package policyengine-uk resolved:

  • policyengine-uk 2.86.0 → 2.89.1
  • policyengine-core 3.23.6 → 3.27.1 (transitive, required by 2.89.1)

Effect

The next push-to-main build (make download → make data → make upload) regenerates the enhanced dataset with bus_fare_spending known, so the column persists and is republished to HF (≈£2.7bn UK household bus/coach fare total). The lock change alone doesn't regenerate the data — it removes the cause so the next build does.

Completes the chain: policyengine-uk-data#428 (imputation) + PolicyEngine/policyengine-uk#1780 (variable) + this bump.

🤖 Generated with Claude Code

vahid-ahmadi and others added 2 commits June 17, 2026 14:11
The dataset build runs `uv sync --frozen`, so it installs the locked
policyengine-uk (2.86.0), which predates the bus_fare_spending input variable
(added in 2.89.1, PolicyEngine/policyengine-uk#1780). With that version the
imputed bus_fare_spending column is dropped when the dataset is materialised
through the model, so it never reaches the published dataset. Update uv.lock to
2.89.1 (and the pyproject floor, to document the true minimum) so the next
build + upload regenerates the dataset with the column.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@vahid-ahmadi vahid-ahmadi merged commit 60c2d38 into main Jun 17, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant