Conversation
|
Dependency note: this PR should not be merged until the companion |
|
Follow-up scope note for the bundle plan: This PR is intended to cover the staged migration layer at Commit 7 (my own internal numbering): make UK data release manifests bundle-ready enough to validate against the current Clarified versioning invariant:
Some issues are deliberately left for later commits because they likely need canonical contract/schema decisions in
The reason to defer these is that they are cross-repo contract questions. Implementing them only here would either bury important semantics in free-form metadata or create a UK-specific shape that |
Fixes #394
Summary
This draft PR makes UK data release manifests compatible with the experimental PolicyEngine bundle/reproducibility contract.
policyengine-uk,policyengine-core, and UK data package provenance metadata to release manifests.created_atfrom normalized manifests so emitted manifests validate against the shared bundle contract.policyengine-bundlesas test tooling, not as a runtime dependency.Validation
ruff check policyengine_uk_data/utils/release_manifest.py policyengine_uk_data/utils/data_upload.py policyengine_uk_data/tests/test_release_manifest.pyruff format --check policyengine_uk_data/utils/release_manifest.py policyengine_uk_data/utils/data_upload.py policyengine_uk_data/tests/test_release_manifest.pyruby -e 'require "yaml"; YAML.load_file(".github/workflows/pull_request.yaml"); puts "ok"'git diff --checkPYTHONPATH=/Users/administrator/Documents/PolicyEngine/policyengine-bundles/src:$PYTHONPATH python -m pytest policyengine_uk_data/tests/test_release_manifest.py -qNotes
uv run pytest policyengine_uk_data/tests/test_release_manifest.py -qis blocked on this local Intel mac because the current lock resolvestorch==2.9.1, which has no compatiblemacosx_15_0_x86_64wheel. CI should run this on Linux.This is intentionally draft because it demonstrates the bundle contract integration before the bundle schema and release orchestration are finalized.