Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions changelog.d/554.changed.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Certify policyengine-uk-data 1.58.0 (`enhanced_frs_2024_25`) as the UK default, and pin policyengine-uk 2.123.4 and policyengine-core 3.32.21. The data was built with policyengine-uk 2.122.2 and core 3.32.13; the publisher's compatibility claim in the 1.58.0 release manifest covers the newer versions. UK results change with the new data release.
2 changes: 1 addition & 1 deletion docs/households.md
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ separate benefit inputs; they do not override SPM measurement composition.

These changes require the coordinated canonical country/calculator bundle, which
the packaged production manifest now pins and certifies: `policyengine-us`
2.2.1, `policyengine-core` 3.32.10, `spm-calculator` 1.0.0, and the US data
2.2.1, `policyengine-core` 3.32.21, `spm-calculator` 1.0.0, and the US data
release `populace-us-2024-spm-20260915`. Local-wheel development manifest
fixtures remain explicitly uncertified. The measurement receipt identifies a
calculation; it does not certify a population dataset or establish publication
Expand Down
14 changes: 7 additions & 7 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -40,17 +40,17 @@ graph = [
"networkx>=3.0",
]
models = [
"policyengine-core==3.32.10",
"policyengine-core==3.32.21",
"policyengine-us==2.2.1",
"policyengine-uk==2.102.3",
"policyengine-uk==2.123.4",
"spm-calculator==1.0.0",
]
uk = [
"policyengine-core==3.32.10",
"policyengine-uk==2.102.3",
"policyengine-core==3.32.21",
"policyengine-uk==2.123.4",
]
us = [
"policyengine-core==3.32.10",
"policyengine-core==3.32.21",
"policyengine-us==2.2.1",
"spm-calculator==1.0.0",
]
Expand All @@ -69,9 +69,9 @@ dev = [
"mypy>=1.11.0",
"pytest-cov>=5.0.0",
"hypothesis>=6.100.0",
"policyengine-core==3.32.10",
"policyengine-core==3.32.21",
"policyengine-us==2.2.1",
"policyengine-uk==2.102.3",
"policyengine-uk==2.123.4",
"spm-calculator==1.0.0",
]

Expand Down
76 changes: 38 additions & 38 deletions src/policyengine/data/bundle/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,99 +16,99 @@
},
"data_releases": {
"uk": {
"build_id": "policyengine-uk-data-1.56.16",
"build_id": "policyengine-uk-data-1.58.0",
"bundle_id": "uk-6.2.2",
"certification": {
"built_with_model_git_sha": "12a1e028afeef08d8b2d74ee03fd9de3a78b2dd3",
"built_with_model_version": "2.89.2",
"built_with_model_git_sha": "4cbedbecca352f52dffe47e849553c2759a00711",
"built_with_model_version": "2.122.2",
"certified_by": "policyengine.py bundle certification",
"certified_for_model_version": "2.102.3",
"certified_for_model_version": "2.123.4",
"compatibility_basis": "legacy_compatible_model_package",
"data_build_fingerprint": "sha256:6bfff835b504094c05342d2b4d770d2d94c8c1adcb15c4468931f53b21a89ea9",
"data_build_id": "policyengine-uk-data-1.56.16"
"data_build_fingerprint": "sha256:c094d7006fdd81df220090284212f16bbffb15624643bc442c4bb3e1b1e5dac8",
"data_build_id": "policyengine-uk-data-1.58.0"
},
"certified_data_artifact": {
"build_id": "policyengine-uk-data-1.56.16",
"build_id": "policyengine-uk-data-1.58.0",
"data_package": {
"name": "policyengine-uk-data",
"version": "1.56.16"
"version": "1.58.0"
},
"dataset": "enhanced_frs_2024_25",
"sha256": "e433e532b17bd8ce76030156285816e33d44e93edabd2204adbef71d19a68712",
"uri": "hf://policyengine/policyengine-uk-data-private/enhanced_frs_2024_25.h5@1.56.16"
"sha256": "5ba399ea5ab9a6c7d4e9aaf6c623080beb34d9ad5f330f6244dbad72b8d960b6",
"uri": "hf://policyengine/policyengine-uk-data-private/enhanced_frs_2024_25.h5@1.58.0"
},
"country_id": "uk",
"data_package": {
"name": "policyengine-uk-data",
"release_manifest_path": "releases/1.56.16/release_manifest.json",
"release_manifest_revision": "78788372fec47fc8df835bd32307ef61eaed83c2",
"release_manifest_path": "releases/1.58.0/release_manifest.json",
"release_manifest_revision": "c30504aa6892f888c36a92f9f41b98cca6c21808",
"repo_id": "policyengine/policyengine-uk-data-private",
"repo_type": "model",
"version": "1.56.16"
"version": "1.58.0"
},
"data_producer": "populace",
"datasets": {
"enhanced_frs_2024_25": {
"path": "enhanced_frs_2024_25.h5",
"repo_id": "policyengine/policyengine-uk-data-private",
"revision": "1.56.16",
"sha256": "e433e532b17bd8ce76030156285816e33d44e93edabd2204adbef71d19a68712"
"revision": "1.58.0",
"sha256": "5ba399ea5ab9a6c7d4e9aaf6c623080beb34d9ad5f330f6244dbad72b8d960b6"
},
"enhanced_frs_2024_25_tiny": {
"path": "enhanced_frs_2024_25_tiny.h5",
"repo_id": "policyengine/policyengine-uk-data-private",
"revision": "1.56.16",
"sha256": "6cbbda7eef1b0b16d62e24a3099dc7959906287d659868d31aa7fc82af598871"
"revision": "1.58.0",
"sha256": "a2e938b6c68952dc6fa3af998501371d9014b66263baef262d4f649fe6f19dd5"
},
"frs_2024_25": {
"path": "frs_2024_25.h5",
"repo_id": "policyengine/policyengine-uk-data-private",
"revision": "1.56.16",
"sha256": "d4d29901d7ea0c1f636060d4177a411a39c1977fa9fd23a61af3bb0f030769bd"
"revision": "1.58.0",
"sha256": "2ec0ea6c10bc82d030a071474c1b376780ea88053e1659d784b4253662341634"
},
"frs_2024_25_tiny": {
"path": "frs_2024_25_tiny.h5",
"repo_id": "policyengine/policyengine-uk-data-private",
"revision": "1.56.16",
"sha256": "74ca086be959b2942ecbf7755034d94dc6a817f4d9d54f2585a1c6df849d9588"
"revision": "1.58.0",
"sha256": "e91d17c4bae92067222272da33918f15027f65a58e3765c7bdff8aa119df914e"
},
"local_authority_weights": {
"path": "local_authority_weights.h5",
"repo_id": "policyengine/policyengine-uk-data-private",
"revision": "1.56.16",
"sha256": "6d634d69fb472b80cc17ffe696e028c54d7b739166bb7d9a57860f9d73537aa5"
"revision": "1.58.0",
"sha256": "0f8e43877f13cea86ea7bd78ce938769d0c2746ac0b191be661c25608aa786fc"
},
"local_geography_weights": {
"path": "local_geography_weights.csv.gz",
"repo_id": "policyengine/policyengine-uk-data-private",
"revision": "1.56.16",
"sha256": "6f623e277089d06c2c50ec3d8ab766635f695c8579d360410e3dcb4214ea9709"
"revision": "1.58.0",
"sha256": "2c4026139eb69d26af5a0ddad7e7fe9ee981b89a0968e77a5f41820091f641c2"
},
"parliamentary_constituency_weights": {
"path": "parliamentary_constituency_weights.h5",
"repo_id": "policyengine/policyengine-uk-data-private",
"revision": "1.56.16",
"sha256": "6870c36072a0c34d2e6ce3ebf58664b7932ca46a9e3808d387988773e63b66d5"
"revision": "1.58.0",
"sha256": "da3d021bf6cd57f06e878094e48524a6a691207231158d9a109da73ea459e900"
}
},
"default_dataset": "enhanced_frs_2024_25",
"default_dataset_uri": "hf://policyengine/policyengine-uk-data-private/enhanced_frs_2024_25.h5@1.56.16",
"default_dataset_uri": "hf://policyengine/policyengine-uk-data-private/enhanced_frs_2024_25.h5@1.58.0",
"model_package": {
"name": "policyengine-uk",
"sha256": "f02a76712a3edf9983c713c1db42e9653a6e974e4ce335dd4b5676bbc2bcd636",
"version": "2.102.3",
"wheel_url": "https://files.pythonhosted.org/packages/37/e6/e8d9069d498f1510a1380f24a78e957902d01f00b10248c146d6710d5b37/policyengine_uk-2.102.3-py3-none-any.whl"
"sha256": "f0261a0afa905196742b5aa9aac776c923daeed75d5815797acb192a65d83acf",
"version": "2.123.4",
"wheel_url": "https://files.pythonhosted.org/packages/6b/4c/bd5e453ffe516752a171b4ca27cfa036eefc8108aa9bfd0e364eb73c672f/policyengine_uk-2.123.4-py3-none-any.whl"
},
"policyengine_version": "6.2.2",
"region_datasets": {
"national": {
"path_template": "enhanced_frs_2024_25.h5"
}
},
"release_manifest_uri": "https://huggingface.co/policyengine/policyengine-uk-data-private/resolve/78788372fec47fc8df835bd32307ef61eaed83c2/releases/1.56.16/release_manifest.json",
"release_manifest_uri": "https://huggingface.co/policyengine/policyengine-uk-data-private/resolve/c30504aa6892f888c36a92f9f41b98cca6c21808/releases/1.58.0/release_manifest.json",
"schema_version": 1,
"source_manifest_uri": "hf://model/policyengine/policyengine-uk-data-private@78788372fec47fc8df835bd32307ef61eaed83c2/releases/1.56.16/release_manifest.json",
"version": "policyengine-uk-data-1.56.16"
"source_manifest_uri": "hf://model/policyengine/policyengine-uk-data-private@c30504aa6892f888c36a92f9f41b98cca6c21808/releases/1.58.0/release_manifest.json",
"version": "policyengine-uk-data-1.58.0"
},
"us": {
"build_id": "populace-us-2024-spm-20260915",
Expand Down Expand Up @@ -302,18 +302,18 @@
},
"policyengine-core": {
"import_name": "policyengine_core",
"install_requirement": "policyengine-core==3.32.10",
"install_requirement": "policyengine-core==3.32.21",
"name": "policyengine-core",
"role": "runtime_dependency",
"version": "3.32.10"
"version": "3.32.21"
},
"policyengine-uk": {
"country": "uk",
"import_name": "policyengine_uk",
"install_requirement": "policyengine-uk==2.102.3",
"install_requirement": "policyengine-uk==2.123.4",
"name": "policyengine-uk",
"role": "country_model",
"version": "2.102.3"
"version": "2.123.4"
},
"policyengine-us": {
"country": "us",
Expand Down
36 changes: 18 additions & 18 deletions src/policyengine/data/bundle/uk.trace.tro.jsonld
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
"schema:name": "PolicyEngine",
"schema:url": "https://policyengine.org"
},
"schema:dateCreated": "2026-08-18T14:20:32.100961Z",
"schema:dateCreated": "2026-10-07T17:31:53.189867Z",
"schema:description": "TRACE TRO for certified runtime bundle uk-6.2.2 covering the bundle manifest, the certified dataset artifact, the country model wheel, and the country data release manifest when it is available.",
"schema:name": "policyengine uk certified bundle TRO",
"trov:createdWith": {
Expand Down Expand Up @@ -45,23 +45,23 @@
"trov:hasArtifact": {
"@id": "composition/1/artifact/data_release_manifest"
},
"trov:hasLocation": "https://huggingface.co/policyengine/policyengine-uk-data-private/resolve/78788372fec47fc8df835bd32307ef61eaed83c2/releases/1.56.16/release_manifest.json"
"trov:hasLocation": "https://huggingface.co/policyengine/policyengine-uk-data-private/resolve/c30504aa6892f888c36a92f9f41b98cca6c21808/releases/1.58.0/release_manifest.json"
},
{
"@id": "arrangement/1/location/dataset",
"@type": "trov:ArtifactLocation",
"trov:hasArtifact": {
"@id": "composition/1/artifact/dataset"
},
"trov:hasLocation": "https://huggingface.co/policyengine/policyengine-uk-data-private/resolve/1.56.16/enhanced_frs_2024_25.h5"
"trov:hasLocation": "https://huggingface.co/policyengine/policyengine-uk-data-private/resolve/1.58.0/enhanced_frs_2024_25.h5"
},
{
"@id": "arrangement/1/location/model_wheel",
"@type": "trov:ArtifactLocation",
"trov:hasArtifact": {
"@id": "composition/1/artifact/model_wheel"
},
"trov:hasLocation": "https://files.pythonhosted.org/packages/37/e6/e8d9069d498f1510a1380f24a78e957902d01f00b10248c146d6710d5b37/policyengine_uk-2.102.3-py3-none-any.whl"
"trov:hasLocation": "https://files.pythonhosted.org/packages/6b/4c/bd5e453ffe516752a171b4ca27cfa036eefc8108aa9bfd0e364eb73c672f/policyengine_uk-2.123.4-py3-none-any.whl"
}
]
}
Expand All @@ -75,52 +75,52 @@
"@type": "trov:ResearchArtifact",
"schema:name": "policyengine.py bundle manifest for uk",
"trov:mimeType": "application/json",
"trov:sha256": "f7563d813c99ae69da849631d57e498703ce338490aac1a17f127e17c15d6f5f"
"trov:sha256": "882b8c742071a7f25d32275f7795df03e15ac71f0bdead39a8b0d0b0ded51211"
},
{
"@id": "composition/1/artifact/data_release_manifest",
"@type": "trov:ResearchArtifact",
"schema:name": "policyengine-uk-data release manifest 1.56.16",
"schema:name": "policyengine-uk-data release manifest 1.58.0",
"trov:mimeType": "application/json",
"trov:sha256": "cb61e3d897fbfa0cc079edc140aebc8947b1a685f581a420de91170ce2686155"
"trov:sha256": "e14b7c973f320415af53751aae9ae98cdfba7cbabe2513b7c26e129eb99b1618"
},
{
"@id": "composition/1/artifact/dataset",
"@type": "trov:ResearchArtifact",
"schema:name": "enhanced_frs_2024_25",
"trov:mimeType": "application/x-hdf5",
"trov:sha256": "e433e532b17bd8ce76030156285816e33d44e93edabd2204adbef71d19a68712"
"trov:sha256": "5ba399ea5ab9a6c7d4e9aaf6c623080beb34d9ad5f330f6244dbad72b8d960b6"
},
{
"@id": "composition/1/artifact/model_wheel",
"@type": "trov:ResearchArtifact",
"schema:name": "policyengine-uk==2.102.3 wheel",
"schema:name": "policyengine-uk==2.123.4 wheel",
"trov:mimeType": "application/zip",
"trov:sha256": "f02a76712a3edf9983c713c1db42e9653a6e974e4ce335dd4b5676bbc2bcd636"
"trov:sha256": "f0261a0afa905196742b5aa9aac776c923daeed75d5815797acb192a65d83acf"
}
],
"trov:hasFingerprint": {
"@id": "composition/1/fingerprint",
"@type": "trov:CompositionFingerprint",
"trov:sha256": "ac5ce54dbdff4fc4aeeb67f89a3ec0455b8bda26c87a5744adf34d5a77fe6c97"
"trov:sha256": "40de7e21721476f4944e0ff52e00a3e2188ebe805e533305e7aded72c105f677"
}
},
"trov:hasPerformance": {
"@id": "trp/1",
"@type": "trov:TransparentResearchPerformance",
"pe:builtWithModelGitSha": "12a1e028afeef08d8b2d74ee03fd9de3a78b2dd3",
"pe:builtWithModelVersion": "2.89.2",
"pe:builtWithModelGitSha": "4cbedbecca352f52dffe47e849553c2759a00711",
"pe:builtWithModelVersion": "2.122.2",
"pe:certifiedBy": "policyengine.py bundle certification",
"pe:certifiedForModelVersion": "2.102.3",
"pe:certifiedForModelVersion": "2.123.4",
"pe:compatibilityBasis": "legacy_compatible_model_package",
"pe:dataBuildFingerprint": "sha256:6bfff835b504094c05342d2b4d770d2d94c8c1adcb15c4468931f53b21a89ea9",
"pe:dataBuildId": "policyengine-uk-data-1.56.16",
"pe:dataBuildFingerprint": "sha256:c094d7006fdd81df220090284212f16bbffb15624643bc442c4bb3e1b1e5dac8",
"pe:dataBuildId": "policyengine-uk-data-1.58.0",
"pe:emittedIn": "repository-bundle",
"rdfs:comment": "Certification of build policyengine-uk-data-1.56.16 for policyengine-uk 2.102.3.",
"rdfs:comment": "Certification of build policyengine-uk-data-1.58.0 for policyengine-uk 2.123.4.",
"trov:accessedArrangement": {
"@id": "arrangement/1"
},
"trov:startedAtTime": "2026-08-18T14:20:32.100961Z",
"trov:startedAtTime": "2026-10-07T17:31:53.189867Z",
"trov:wasConductedBy": {
"@id": "trs"
}
Expand Down
4 changes: 2 additions & 2 deletions src/policyengine/data/bundle/us.trace.tro.jsonld
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@
"@type": "trov:ResearchArtifact",
"schema:name": "policyengine.py bundle manifest for us",
"trov:mimeType": "application/json",
"trov:sha256": "f7563d813c99ae69da849631d57e498703ce338490aac1a17f127e17c15d6f5f"
"trov:sha256": "882b8c742071a7f25d32275f7795df03e15ac71f0bdead39a8b0d0b0ded51211"
},
{
"@id": "composition/1/artifact/data_release_manifest",
Expand All @@ -101,7 +101,7 @@
"trov:hasFingerprint": {
"@id": "composition/1/fingerprint",
"@type": "trov:CompositionFingerprint",
"trov:sha256": "f9c4770614de85fadde53b9f18d3f05f7d2e10962ee0b67ca99d659938bdee2e"
"trov:sha256": "ecc5f0a1487385e421ddf71396b6c469c696ce881243a9d155c2ef194fc5d4d0"
}
},
"trov:hasPerformance": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,13 @@
"household.equiv_hbai_household_net_income": 52510.29,
"household.fuel_duty": 0.0,
"household.hbai_household_net_income": 73514.4,
"household.household_benefits": 5889.59,
"household.household_benefits": 9441.78,
"household.household_count_people": 4.0,
"household.household_gross_income": 95889.59,
"household.household_gross_income": 99441.78,
"household.household_id": 0.0,
"household.household_income_decile": 10.0,
"household.household_market_income": 90000.0,
"household.household_net_income": 76886.55,
"household.household_net_income": 80438.73,
"household.household_tax": 19003.05,
"household.household_wealth_decile": 10.0,
"household.household_weight": 1.0,
Expand All @@ -46,7 +46,7 @@
"person[0].is_child": 0.0,
"person[0].is_male": 1.0,
"person[0].national_insurance": 3110.6,
"person[0].ni_employer": 7501.2,
"person[0].ni_employer": 7500.0,
"person[0].pension_credit": 0.0,
"person[0].pension_income": 0.0,
"person[0].person_id": 0.0,
Expand Down Expand Up @@ -75,7 +75,7 @@
"person[1].is_child": 0.0,
"person[1].is_male": 1.0,
"person[1].national_insurance": 1794.4,
"person[1].ni_employer": 4501.2,
"person[1].ni_employer": 4500.0,
"person[1].pension_credit": 0.0,
"person[1].pension_income": 0.0,
"person[1].person_id": 0.0,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"has_income_tax": true,
"has_region_registry": true,
"model_package_name": "policyengine-uk",
"num_parameters_bucketed_100s": 26,
"num_variables_bucketed_100s": 9,
"num_parameters_bucketed_100s": 32,
"num_variables_bucketed_100s": 10,
"region_registry_country": "uk"
}
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@
"person[0].is_child": 0.0,
"person[0].is_male": 1.0,
"person[0].national_insurance": 1394.4,
"person[0].ni_employer": 3751.2,
"person[0].ni_employer": 3750.0,
"person[0].pension_credit": 0.0,
"person[0].pension_income": 0.0,
"person[0].person_id": 0.0,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@
"person[0].is_child": 0.0,
"person[0].is_male": 1.0,
"person[0].national_insurance": 994.4,
"person[0].ni_employer": 3001.2,
"person[0].ni_employer": 3000.0,
"person[0].pension_credit": 0.0,
"person[0].pension_income": 0.0,
"person[0].person_id": 0.0,
Expand Down
Loading
Loading