diff --git a/changelog.d/certify-uk-microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7.changed.md b/changelog.d/certify-uk-microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7.changed.md new file mode 100644 index 000000000..17655d3d9 --- /dev/null +++ b/changelog.d/certify-uk-microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7.changed.md @@ -0,0 +1 @@ +Certify Microcosm UK for policyengine-uk 2.165.1: the national `microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7` (`microcosm_uk_2024_25`), built with 2.165.1 from PolicyEngine/microcosm#1491 at `dd99a1dcd`, and the local-area cut `microcosm-uk-2024-25-dense-20261104T093024Z-83802786` (`microcosm_uk_2024_25_dense`), which constituency and local-authority regions route to. The national binds HMRC's 2024-25 company car holders, taxable value and fuel counts, and bands SPI records on total income net of expenses. The local-area cut is built from the same commit and spine with its gate-only sign-off (`5293966d4`), also on 2.165.1, so both certify on their own build: area runs read every input the engine takes, company cars and ISA payments included. They replace the national `microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e` and the local-area cut `microcosm-uk-2024-25-dense-20261107T173210Z-38605444`, so the national no longer carries the FRS full-time education flag or the bound single years of age 16 to 24. The UK model pin moves from policyengine-uk 2.174.1 back to 2.165.1 (policyengine-core stays 3.33.3), so UK results change with both the model and the data. policyengine-uk 2.165.1 predates 2.170.0 (PolicyEngine/policyengine-uk#2719), so UK current law no longer includes the Autumn Budget 2026 measures: the Household Energy Payment, the Pension Tax Allowance, the Carer's Allowance taper, the higher savings and property income rates, the £3,000 trading allowance, and the fuel duty and domestic electricity VAT extensions. diff --git a/pyproject.toml b/pyproject.toml index 1f9128d6b..a56282f46 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -42,12 +42,12 @@ graph = [ models = [ "policyengine-core==3.33.3", "policyengine-us==2.2.1", - "policyengine-uk==2.174.1", + "policyengine-uk==2.165.1", "spm-calculator==1.0.0", ] uk = [ "policyengine-core==3.33.3", - "policyengine-uk==2.174.1", + "policyengine-uk==2.165.1", ] us = [ "policyengine-core==3.33.3", @@ -72,7 +72,7 @@ dev = [ "rfc8785>=0.1.4", "policyengine-core==3.33.3", "policyengine-us==2.2.1", - "policyengine-uk==2.174.1", + "policyengine-uk==2.165.1", "spm-calculator==1.0.0", ] diff --git a/src/policyengine/data/bundle/manifest.json b/src/policyengine/data/bundle/manifest.json index 24616bf50..730406831 100644 --- a/src/policyengine/data/bundle/manifest.json +++ b/src/policyengine/data/bundle/manifest.json @@ -16,31 +16,31 @@ }, "data_releases": { "uk": { - "build_id": "microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e", + "build_id": "microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7", "bundle_id": "uk-6.17.1", "certification": { - "built_with_model_version": "2.174.1", + "built_with_model_version": "2.165.1", "certified_by": "policyengine.py bundle certification", - "certified_for_model_version": "2.174.1", + "certified_for_model_version": "2.165.1", "compatibility_basis": "built_with_model_package", "core_binding": "bundle_pin", - "data_build_id": "microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e" + "data_build_id": "microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7" }, "certified_data_artifact": { - "build_id": "microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e", + "build_id": "microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7", "data_package": { "name": "microcosm-data", "version": "0.1.0" }, "dataset": "microcosm_uk_2024_25", - "sha256": "0a9b77db1c0dee2693cb2d47bad68da34cb662916eee4829942bcd45de581f25", - "uri": "hf://policyengine/populace-uk-private/microcosm_uk_2024_25.h5@microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e" + "sha256": "b35b336242caef97892efdc475d35a55160ef22388f42ebf2a610b410dd60837", + "uri": "hf://policyengine/populace-uk-private/microcosm_uk_2024_25.h5@microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7" }, "country_id": "uk", "data_package": { "name": "microcosm-data", "release_manifest_path": "releases/microcosm-uk-2024-25-national/release_manifest.json", - "release_manifest_revision": "microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e", + "release_manifest_revision": "microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7", "repo_id": "policyengine/populace-uk-private", "repo_type": "dataset", "version": "0.1.0" @@ -50,66 +50,66 @@ "calibration_diagnostics": { "path": "releases/microcosm-uk-2024-25-national/calibration_diagnostics.json", "repo_id": "policyengine/populace-uk-private", - "revision": "microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e", - "sha256": "7b9685d835db96ad1f687a9407333bdb35c6bc8d1053cbdff12276c7bc5b6a65" + "revision": "microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7", + "sha256": "851969f7398fef4a72c78ce81e3d5532944ee2359ec16cbc63cbe2c6d33b6341" }, "microcosm_uk_2024_25": { "path": "microcosm_uk_2024_25.h5", "repo_id": "policyengine/populace-uk-private", - "revision": "microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e", - "sha256": "0a9b77db1c0dee2693cb2d47bad68da34cb662916eee4829942bcd45de581f25" + "revision": "microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7", + "sha256": "b35b336242caef97892efdc475d35a55160ef22388f42ebf2a610b410dd60837" }, "microcosm_uk_2024_25_calibration": { "path": "microcosm_uk_2024_25_calibration.npz", "repo_id": "policyengine/populace-uk-private", - "revision": "microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e", - "sha256": "e94ce3f42a5e35d112320b9413545e32c584cb1b302b050e461bf2dfe679f4fb" + "revision": "microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7", + "sha256": "7c2ec377c67c716463ea858e61556bd1dda5c899c269f2c9bc5f1ac15bf1983b" }, "microcosm_uk_2024_25_dense": { "path": "microcosm_uk_2024_25_dense.h5", "repo_id": "policyengine/populace-uk-private", "repo_type": "dataset", - "revision": "microcosm-uk-2024-25-dense-20261107T173210Z-38605444", - "sha256": "1b71c5c93f47f497b25ec106d3e13017af6e0c41d808cc7db74f4e0a0dff4bf4" + "revision": "microcosm-uk-2024-25-dense-20261104T093024Z-83802786", + "sha256": "51a370ffee1414a39ffe192f9031b5b4a7e8970ebd8cc98c4049ebceaea6a323" }, "release_certification": { "path": "releases/microcosm-uk-2024-25-national/release_certification.json", "repo_id": "policyengine/populace-uk-private", - "revision": "microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e", - "sha256": "9bab3aef310183665adb1c7d1ae4a61ef41d21868059535b0c5801fcc6f87dee" + "revision": "microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7", + "sha256": "d5a78e22bb23223ddc58444e894df5e76bbb5cbfea1c953ee9b6dcb4910e634c" }, "release_cut_gates": { "path": "releases/microcosm-uk-2024-25-national/release_cut_gates.json", "repo_id": "policyengine/populace-uk-private", - "revision": "microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e", - "sha256": "ba6f2efd7c391453eebd48fc02be936dd9d78dbf165f57bc2d52de70846ae000" + "revision": "microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7", + "sha256": "26083c43c6da41318b584293bee0055d859cfe578a2ebad43aaf6441d126a718" }, "score_vs_enhanced_frs": { "path": "releases/microcosm-uk-2024-25-national/score_vs_enhanced_frs.json", "repo_id": "policyengine/populace-uk-private", - "revision": "microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e", - "sha256": "2b0564603174cc3aeb45b1dc02fd4dcb14dacbf414a5980ae719cd9cafb2d73c" + "revision": "microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7", + "sha256": "59711c83849bb7b2d975484eca15f3669d33e59f9a2b2853ff01f97d429040f3" }, "spine_gates": { "path": "releases/microcosm-uk-2024-25-national/spine_gates.json", "repo_id": "policyengine/populace-uk-private", - "revision": "microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e", - "sha256": "3708c3314f7ca975b76d9edf96a8dc0777624945cbc7c04e6680aa6d0253a6c7" + "revision": "microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7", + "sha256": "40163889bbd38d005e1b4175d42265b6e4b2b2cc8d2278d1cd6ba51fc1d06905" }, "terminal_gates": { "path": "releases/microcosm-uk-2024-25-national/terminal_gates.json", "repo_id": "policyengine/populace-uk-private", - "revision": "microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e", - "sha256": "a647f8c0ee510044acd962377d71a16f917e4bf7ae66ca63946aac332a0806a0" + "revision": "microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7", + "sha256": "3150839a2c658402387ff94c5ca6baefaac81e8f196fc9d286d7f7af24a2b34c" } }, "default_dataset": "microcosm_uk_2024_25", - "default_dataset_uri": "hf://policyengine/populace-uk-private/microcosm_uk_2024_25.h5@microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e", + "default_dataset_uri": "hf://policyengine/populace-uk-private/microcosm_uk_2024_25.h5@microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7", "model_package": { "name": "policyengine-uk", - "sha256": "1d4d17c74bd5b853a148e9c44b080490dd0393725fe18b2b82ec55eecdb9bb58", - "version": "2.174.1", - "wheel_url": "https://files.pythonhosted.org/packages/35/ed/5ea303be2fd38da4e5f9b9a3fd012a5f9454fd5ef66a1df26c3267fb57a8/policyengine_uk-2.174.1-py3-none-any.whl" + "sha256": "e8327ffe22393d468f7c4bb0e1e18b8b8ed7241b1a5fcec447917196e8a1b4fa", + "version": "2.165.1", + "wheel_url": "https://files.pythonhosted.org/packages/eb/3c/4db973ea84deb97e32a4a67a832babbade2475f2df9edc7a2494dae86d69/policyengine_uk-2.165.1-py3-none-any.whl" }, "policyengine_version": "6.17.1", "region_datasets": { @@ -124,13 +124,13 @@ } }, "regional_release_kind": "local_area", - "regional_release_manifest_uri": "https://huggingface.co/datasets/policyengine/populace-uk-private/resolve/microcosm-uk-2024-25-dense-20261107T173210Z-38605444/releases/microcosm-uk-2024-25-dense/release_manifest.json", - "regional_source_manifest_sha256": "99d9afb3799cab9df845fef8fb187f6b19241ab6c61711ed298ca365dd4f71c7", - "regional_source_manifest_uri": "hf://dataset/policyengine/populace-uk-private@microcosm-uk-2024-25-dense-20261107T173210Z-38605444/releases/microcosm-uk-2024-25-dense/release_manifest.json", - "release_manifest_uri": "https://huggingface.co/datasets/policyengine/populace-uk-private/resolve/microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e/releases/microcosm-uk-2024-25-national/release_manifest.json", + "regional_release_manifest_uri": "https://huggingface.co/datasets/policyengine/populace-uk-private/resolve/microcosm-uk-2024-25-dense-20261104T093024Z-83802786/releases/microcosm-uk-2024-25-dense/release_manifest.json", + "regional_source_manifest_sha256": "cb56e4072b41bc757bcdc48acbe7840fa1262ab18bc600e89cf0f97ba8ec475a", + "regional_source_manifest_uri": "hf://dataset/policyengine/populace-uk-private@microcosm-uk-2024-25-dense-20261104T093024Z-83802786/releases/microcosm-uk-2024-25-dense/release_manifest.json", + "release_manifest_uri": "https://huggingface.co/datasets/policyengine/populace-uk-private/resolve/microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7/releases/microcosm-uk-2024-25-national/release_manifest.json", "schema_version": 1, - "source_manifest_uri": "hf://dataset/policyengine/populace-uk-private@microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e/releases/microcosm-uk-2024-25-national/release_manifest.json", - "version": "microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e" + "source_manifest_uri": "hf://dataset/policyengine/populace-uk-private@microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7/releases/microcosm-uk-2024-25-national/release_manifest.json", + "version": "microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7" }, "us": { "build_id": "populace-us-2024-spm-20260915", @@ -364,10 +364,10 @@ "policyengine-uk": { "country": "uk", "import_name": "policyengine_uk", - "install_requirement": "policyengine-uk==2.174.1", + "install_requirement": "policyengine-uk==2.165.1", "name": "policyengine-uk", "role": "country_model", - "version": "2.174.1" + "version": "2.165.1" }, "policyengine-us": { "country": "us", diff --git a/src/policyengine/data/bundle/uk.trace.tro.jsonld b/src/policyengine/data/bundle/uk.trace.tro.jsonld index da96e7fc2..8d53b0538 100644 --- a/src/policyengine/data/bundle/uk.trace.tro.jsonld +++ b/src/policyengine/data/bundle/uk.trace.tro.jsonld @@ -17,7 +17,7 @@ "schema:name": "PolicyEngine", "schema:url": "https://policyengine.org" }, - "schema:dateCreated": "2026-11-07T03:22:40.126887+00:00", + "schema:dateCreated": "2026-11-03T17:07:52.460115+00:00", "schema:description": "TRACE TRO for certified runtime bundle uk-6.17.1 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": { @@ -45,7 +45,7 @@ "trov:hasArtifact": { "@id": "composition/1/artifact/data_release_manifest" }, - "trov:hasLocation": "https://huggingface.co/datasets/policyengine/populace-uk-private/resolve/microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e/releases/microcosm-uk-2024-25-national/release_manifest.json" + "trov:hasLocation": "https://huggingface.co/datasets/policyengine/populace-uk-private/resolve/microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7/releases/microcosm-uk-2024-25-national/release_manifest.json" }, { "@id": "arrangement/1/location/dataset", @@ -53,7 +53,7 @@ "trov:hasArtifact": { "@id": "composition/1/artifact/dataset" }, - "trov:hasLocation": "https://huggingface.co/datasets/policyengine/populace-uk-private/resolve/microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e/microcosm_uk_2024_25.h5" + "trov:hasLocation": "https://huggingface.co/datasets/policyengine/populace-uk-private/resolve/microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7/microcosm_uk_2024_25.h5" }, { "@id": "arrangement/1/location/model_wheel", @@ -61,7 +61,7 @@ "trov:hasArtifact": { "@id": "composition/1/artifact/model_wheel" }, - "trov:hasLocation": "https://files.pythonhosted.org/packages/35/ed/5ea303be2fd38da4e5f9b9a3fd012a5f9454fd5ef66a1df26c3267fb57a8/policyengine_uk-2.174.1-py3-none-any.whl" + "trov:hasLocation": "https://files.pythonhosted.org/packages/eb/3c/4db973ea84deb97e32a4a67a832babbade2475f2df9edc7a2494dae86d69/policyengine_uk-2.165.1-py3-none-any.whl" } ] } @@ -75,51 +75,51 @@ "@type": "trov:ResearchArtifact", "schema:name": "policyengine.py bundle manifest for uk", "trov:mimeType": "application/json", - "trov:sha256": "eb55ec40c9d6d3d465c6555d1af18c66103d91f500d1c8d25950e76167248cac" + "trov:sha256": "ad56f3d87508050077491d3c0996ecd49fdf4778500e224bbd651b549a87f087" }, { "@id": "composition/1/artifact/data_release_manifest", "@type": "trov:ResearchArtifact", "schema:name": "microcosm-data release manifest 0.1.0", "trov:mimeType": "application/json", - "trov:sha256": "58b47e8d1b1c2e53a93a59380a7b3ba2a50774226e814eaa9a1e536f43eb4946" + "trov:sha256": "021330461f8bce485ac74c00198a621d9f38658044be0be2454e0c422bd48c0f" }, { "@id": "composition/1/artifact/dataset", "@type": "trov:ResearchArtifact", "schema:name": "microcosm_uk_2024_25", "trov:mimeType": "application/x-hdf5", - "trov:sha256": "0a9b77db1c0dee2693cb2d47bad68da34cb662916eee4829942bcd45de581f25" + "trov:sha256": "b35b336242caef97892efdc475d35a55160ef22388f42ebf2a610b410dd60837" }, { "@id": "composition/1/artifact/model_wheel", "@type": "trov:ResearchArtifact", - "schema:name": "policyengine-uk==2.174.1 wheel", + "schema:name": "policyengine-uk==2.165.1 wheel", "trov:mimeType": "application/zip", - "trov:sha256": "1d4d17c74bd5b853a148e9c44b080490dd0393725fe18b2b82ec55eecdb9bb58" + "trov:sha256": "e8327ffe22393d468f7c4bb0e1e18b8b8ed7241b1a5fcec447917196e8a1b4fa" } ], "trov:hasFingerprint": { "@id": "composition/1/fingerprint", "@type": "trov:CompositionFingerprint", - "trov:sha256": "bbbae3199940c09101f27fa91412b7b06c2456e17065479643542b33de824f04" + "trov:sha256": "f8fccf6a0a8837c073d4758c852fba2d234de75cb7ae953937a494e37a69cc9c" } }, "trov:hasPerformance": { "@id": "trp/1", "@type": "trov:TransparentResearchPerformance", - "pe:builtWithModelVersion": "2.174.1", + "pe:builtWithModelVersion": "2.165.1", "pe:certifiedBy": "policyengine.py bundle certification", - "pe:certifiedForModelVersion": "2.174.1", + "pe:certifiedForModelVersion": "2.165.1", "pe:compatibilityBasis": "built_with_model_package", "pe:coreBinding": "bundle_pin", - "pe:dataBuildId": "microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e", + "pe:dataBuildId": "microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7", "pe:emittedIn": "repository-bundle", - "rdfs:comment": "Certification of build microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e for policyengine-uk 2.174.1.", + "rdfs:comment": "Certification of build microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7 for policyengine-uk 2.165.1.", "trov:accessedArrangement": { "@id": "arrangement/1" }, - "trov:startedAtTime": "2026-11-07T03:22:40.126887+00:00", + "trov:startedAtTime": "2026-11-03T17:07:52.460115+00:00", "trov:wasConductedBy": { "@id": "trs" } diff --git a/src/policyengine/data/bundle/us.trace.tro.jsonld b/src/policyengine/data/bundle/us.trace.tro.jsonld index b0dc75d15..16676a018 100644 --- a/src/policyengine/data/bundle/us.trace.tro.jsonld +++ b/src/policyengine/data/bundle/us.trace.tro.jsonld @@ -74,7 +74,7 @@ "@type": "trov:ResearchArtifact", "schema:name": "policyengine.py bundle manifest for us", "trov:mimeType": "application/json", - "trov:sha256": "eb55ec40c9d6d3d465c6555d1af18c66103d91f500d1c8d25950e76167248cac" + "trov:sha256": "ad56f3d87508050077491d3c0996ecd49fdf4778500e224bbd651b549a87f087" }, { "@id": "composition/1/artifact/data_release_manifest", @@ -101,7 +101,7 @@ "trov:hasFingerprint": { "@id": "composition/1/fingerprint", "@type": "trov:CompositionFingerprint", - "trov:sha256": "04bc286d319dd4cdb391f31935e56427c9cd819c72c251340ed9782ba676511b" + "trov:sha256": "d1b16162405e00be9800178061f66b0530cb297c9c50e223991d1f8df4948763" } }, "trov:hasPerformance": { diff --git a/tests/fixtures/household_calculator_snapshots/uk_couple_two_kids.json b/tests/fixtures/household_calculator_snapshots/uk_couple_two_kids.json index 61742dfa3..967efd45e 100644 --- a/tests/fixtures/household_calculator_snapshots/uk_couple_two_kids.json +++ b/tests/fixtures/household_calculator_snapshots/uk_couple_two_kids.json @@ -10,16 +10,16 @@ "benunit.universal_credit": 0.0, "benunit.working_tax_credit": 0.0, "household.council_tax": 0.0, - "household.equiv_hbai_household_net_income": 52581.71, + "household.equiv_hbai_household_net_income": 52510.29, "household.fuel_duty": 0.0, - "household.hbai_household_net_income": 73614.4, - "household.household_benefits": 10843.0, + "household.hbai_household_net_income": 73514.4, + "household.household_benefits": 10743.0, "household.household_count_people": 4.0, - "household.household_gross_income": 100843.0, + "household.household_gross_income": 100743.0, "household.household_id": 0.0, "household.household_income_decile": 10.0, "household.household_market_income": 90000.0, - "household.household_net_income": 81840.0, + "household.household_net_income": 81740.0, "household.household_tax": 19003.0, "household.household_wealth_decile": 10.0, "household.household_weight": 1.0, diff --git a/tests/fixtures/household_calculator_snapshots/uk_model_surface.json b/tests/fixtures/household_calculator_snapshots/uk_model_surface.json index 34ef7956d..c62c5b249 100644 --- a/tests/fixtures/household_calculator_snapshots/uk_model_surface.json +++ b/tests/fixtures/household_calculator_snapshots/uk_model_surface.json @@ -5,7 +5,7 @@ "has_income_tax": true, "has_region_registry": true, "model_package_name": "policyengine-uk", - "num_parameters_bucketed_100s": 48, - "num_variables_bucketed_100s": 14, + "num_parameters_bucketed_100s": 46, + "num_variables_bucketed_100s": 13, "region_registry_country": "uk" } diff --git a/tests/fixtures/household_calculator_snapshots/uk_single_adult_employment_income.json b/tests/fixtures/household_calculator_snapshots/uk_single_adult_employment_income.json index 1f15e4818..a96a4e099 100644 --- a/tests/fixtures/household_calculator_snapshots/uk_single_adult_employment_income.json +++ b/tests/fixtures/household_calculator_snapshots/uk_single_adult_employment_income.json @@ -10,16 +10,16 @@ "benunit.universal_credit": 0.0, "benunit.working_tax_credit": 0.0, "household.council_tax": 0.0, - "household.equiv_hbai_household_net_income": 37641.19, + "household.equiv_hbai_household_net_income": 37491.94, "household.fuel_duty": 0.0, - "household.hbai_household_net_income": 25219.6, - "household.household_benefits": 100.0, + "household.hbai_household_net_income": 25119.6, + "household.household_benefits": 0.0, "household.household_count_people": 1.0, - "household.household_gross_income": 30100.0, + "household.household_gross_income": 30000.0, "household.household_id": 0.0, "household.household_income_decile": 10.0, "household.household_market_income": 30000.0, - "household.household_net_income": 25039.6, + "household.household_net_income": 24939.6, "household.household_tax": 5060.4, "household.household_wealth_decile": 10.0, "household.household_weight": 1.0, diff --git a/tests/fixtures/household_calculator_snapshots/uk_single_adult_no_income.json b/tests/fixtures/household_calculator_snapshots/uk_single_adult_no_income.json index d7dd50f04..9e0e58a18 100644 --- a/tests/fixtures/household_calculator_snapshots/uk_single_adult_no_income.json +++ b/tests/fixtures/household_calculator_snapshots/uk_single_adult_no_income.json @@ -10,16 +10,16 @@ "benunit.universal_credit": 5098.8, "benunit.working_tax_credit": 0.0, "household.council_tax": 0.0, - "household.equiv_hbai_household_net_income": 7983.28, + "household.equiv_hbai_household_net_income": 7834.03, "household.fuel_duty": 0.0, - "household.hbai_household_net_income": 5348.8, - "household.household_benefits": 5198.8, + "household.hbai_household_net_income": 5248.8, + "household.household_benefits": 5098.8, "household.household_count_people": 1.0, - "household.household_gross_income": 5198.8, + "household.household_gross_income": 5098.8, "household.household_id": 0.0, "household.household_income_decile": 10.0, "household.household_market_income": 0.0, - "household.household_net_income": 5018.8, + "household.household_net_income": 4918.8, "household.household_tax": 180.0, "household.household_wealth_decile": 10.0, "household.household_weight": 1.0, diff --git a/tests/fixtures/household_calculator_snapshots/uk_single_parent_one_child.json b/tests/fixtures/household_calculator_snapshots/uk_single_parent_one_child.json index bcbaff894..adc16c6a0 100644 --- a/tests/fixtures/household_calculator_snapshots/uk_single_parent_one_child.json +++ b/tests/fixtures/household_calculator_snapshots/uk_single_parent_one_child.json @@ -10,16 +10,16 @@ "benunit.universal_credit": 1596.3, "benunit.working_tax_credit": 0.0, "household.council_tax": 0.0, - "household.equiv_hbai_household_net_income": 28474.13, + "household.equiv_hbai_household_net_income": 28359.19, "household.fuel_duty": 0.0, - "household.hbai_household_net_income": 24772.5, - "household.household_benefits": 3102.9, + "household.hbai_household_net_income": 24672.5, + "household.household_benefits": 3002.9, "household.household_count_people": 2.0, - "household.household_gross_income": 28102.9, + "household.household_gross_income": 28002.9, "household.household_id": 0.0, "household.household_income_decile": 10.0, "household.household_market_income": 25000.0, - "household.household_net_income": 24442.5, + "household.household_net_income": 24342.5, "household.household_tax": 3660.4, "household.household_wealth_decile": 10.0, "household.household_weight": 1.0, diff --git a/tests/test_models.py b/tests/test_models.py index ce8f296f9..f93460363 100644 --- a/tests/test_models.py +++ b/tests/test_models.py @@ -43,13 +43,13 @@ def test_has_release_manifest_metadata(self): assert uk_latest.release_manifest is not None assert uk_latest.release_manifest.country_id == "uk" assert uk_latest.model_package.name == "policyengine-uk" - assert uk_latest.model_package.version == "2.174.1" + assert uk_latest.model_package.version == "2.165.1" assert uk_latest.data_package.name == "microcosm-data" assert uk_latest.data_package.version == "0.1.0" assert ( uk_latest.default_dataset_uri == "hf://policyengine/populace-uk-private/microcosm_uk_2024_25.h5" - "@microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e" + "@microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7" ) def test_has_hundreds_of_parameters(self): diff --git a/tests/test_release_manifests.py b/tests/test_release_manifests.py index 44c60c8ff..b7f09ae59 100644 --- a/tests/test_release_manifests.py +++ b/tests/test_release_manifests.py @@ -73,13 +73,13 @@ "hf://policyengine/populace-us/populace_us_2024_acs_local.h5" f"@{US_LOCAL_AREA_RELEASE_ID}" ) -UK_MODEL_VERSION = "2.174.1" -UK_BUILT_WITH_MODEL_VERSION = "2.174.1" +UK_MODEL_VERSION = "2.165.1" +UK_BUILT_WITH_MODEL_VERSION = "2.165.1" UK_DATA_RELEASE_VERSION = "0.1.0" -UK_DATA_RELEASE_ID = "microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e" -UK_DATA_RELEASE_REVISION = "microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e" +UK_DATA_RELEASE_ID = "microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7" +UK_DATA_RELEASE_REVISION = "microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7" UK_DATA_RELEASE_PATH = "releases/microcosm-uk-2024-25-national/release_manifest.json" -UK_LOCAL_AREA_RELEASE_ID = "microcosm-uk-2024-25-dense-20261107T173210Z-38605444" +UK_LOCAL_AREA_RELEASE_ID = "microcosm-uk-2024-25-dense-20261104T093024Z-83802786" # The prior certified default (policyengine-uk-data 1.58.1), kept resolvable # via dataset_overlays. UK_EFRS_DATASET_URI = ( diff --git a/tests/test_uk_regions.py b/tests/test_uk_regions.py index 82258aa84..6aafc93b6 100644 --- a/tests/test_uk_regions.py +++ b/tests/test_uk_regions.py @@ -24,11 +24,11 @@ # release its constituency and local-authority regions are routed to. UK_CERTIFIED_NATIONAL_URI = ( "hf://policyengine/populace-uk-private/microcosm_uk_2024_25.h5" - "@microcosm-uk-2024-25-national-20261107T020434Z-eeb6093e" + "@microcosm-uk-2024-25-national-20261103T154302Z-0639b9c7" ) UK_CERTIFIED_LOCAL_AREA_URI = ( "hf://policyengine/populace-uk-private/microcosm_uk_2024_25_dense.h5" - "@microcosm-uk-2024-25-dense-20261107T173210Z-38605444" + "@microcosm-uk-2024-25-dense-20261104T093024Z-83802786" ) UK_AREA_REGION_COUNT = 650 + 361 diff --git a/uv.lock b/uv.lock index d740e76dc..596c4f7da 100644 --- a/uv.lock +++ b/uv.lock @@ -1894,9 +1894,9 @@ requires-dist = [ { name = "policyengine-core", marker = "extra == 'models'", specifier = "==3.33.3" }, { name = "policyengine-core", marker = "extra == 'uk'", specifier = "==3.33.3" }, { name = "policyengine-core", marker = "extra == 'us'", specifier = "==3.33.3" }, - { name = "policyengine-uk", marker = "extra == 'dev'", specifier = "==2.174.1" }, - { name = "policyengine-uk", marker = "extra == 'models'", specifier = "==2.174.1" }, - { name = "policyengine-uk", marker = "extra == 'uk'", specifier = "==2.174.1" }, + { name = "policyengine-uk", marker = "extra == 'dev'", specifier = "==2.165.1" }, + { name = "policyengine-uk", marker = "extra == 'models'", specifier = "==2.165.1" }, + { name = "policyengine-uk", marker = "extra == 'uk'", specifier = "==2.165.1" }, { name = "policyengine-us", marker = "extra == 'dev'", specifier = "==2.2.1" }, { name = "policyengine-us", marker = "extra == 'models'", specifier = "==2.2.1" }, { name = "policyengine-us", marker = "extra == 'us'", specifier = "==2.2.1" }, @@ -1946,7 +1946,7 @@ wheels = [ [[package]] name = "policyengine-uk" -version = "2.174.1" +version = "2.165.1" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "microdf-python" }, @@ -1954,9 +1954,9 @@ dependencies = [ { name = "pydantic" }, { name = "tables" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/be/3a/fbf290895263fd4f8394f76fe1694e90e2c7b8b51a5a18f45f9bda16a4e2/policyengine_uk-2.174.1.tar.gz", hash = "sha256:c8302686c4d7c6fa92fb87febe1ad8130b7a0dd7987d5b14104384bd171f2245", size = 4434552, upload-time = "2026-11-04T07:36:05.319Z" } +sdist = { url = "https://files.pythonhosted.org/packages/23/ce/df5ddeb39b25ab2b4d7ebfaa9109622cbcb000073fdcabd2f39a9503dc05/policyengine_uk-2.165.1.tar.gz", hash = "sha256:7b3620e0c3c3b612b36c4b8f37a802349e1c1332df6ece15329e12aa7a7ebc31", size = 3943824, upload-time = "2026-10-30T14:56:29.366Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/35/ed/5ea303be2fd38da4e5f9b9a3fd012a5f9454fd5ef66a1df26c3267fb57a8/policyengine_uk-2.174.1-py3-none-any.whl", hash = "sha256:1d4d17c74bd5b853a148e9c44b080490dd0393725fe18b2b82ec55eecdb9bb58", size = 6313656, upload-time = "2026-11-04T07:36:02.964Z" }, + { url = "https://files.pythonhosted.org/packages/eb/3c/4db973ea84deb97e32a4a67a832babbade2475f2df9edc7a2494dae86d69/policyengine_uk-2.165.1-py3-none-any.whl", hash = "sha256:e8327ffe22393d468f7c4bb0e1e18b8b8ed7241b1a5fcec447917196e8a1b4fa", size = 5720638, upload-time = "2026-10-30T14:56:26.834Z" }, ] [[package]]