Skip to content
Merged
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/1490-uk-feed-repin-6475380.changed.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
The UK Chronicle feed is re-pinned to 6475380, the merge of PolicyEngine/chronicle#411 on top of 08962f1 (1,585,295 rows). It brings the UK facts of PolicyEngine/chronicle#407 (73,039 rows): the ONS Annual Population Survey's people in employment by SOC 2020 major and sub-major group (Nomis APS218, three twelve-month periods from April 2024 to March 2026) and ASHE Table 2's gross weekly and annual pay by occupation (2024 and 2025 revised, 2026 provisional). The rows move to `chronicle.consumer_fact.v5` (PolicyEngine/chronicle#377), which gives each dimension value one Chronicle-declared label and keeps the source package's own wording in an optional `package_dimension_value_labels`; Microcosm declares the v5 row contract beside v1 to v4. No existing fact's value moves and no row is dropped: 183,848 rows change display labels only. No compiled value moves on either surface: both reference files and both compile-parity receipts are byte-identical, and the vendored resources and the DESNZ constituency resource carry the same rows under the new feed identity.
1 change: 1 addition & 0 deletions changelog.d/1490-uk-occupation-targets.added.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
The ONS Annual Population Survey's people in employment by SOC 2020 occupation bind as calibration targets (microcosm#1490). The nine major groups each bind over the UK's twelve region-tier areas (108 references, María's ruling of 4 November 2026), and 25 of the 26 sub-major groups bind for men and for women at UK level (50 references, her ruling of 5 November 2026). Community and civil enforcement (63) binds only through its major group's regional rows: its APS cells are the thinnest (the interval on its women is 60% of the estimate) and few households on the frame carry it. The rows read Nomis APS218 for January to December 2025, all employment types, through PolicyEngine/chronicle#411. Each counts the people whose `employment_status` is full-time or part-time employed or self-employed and whose `soc2020_major_group`, or `soc2020_sub_major_group` and `gender`, match the row. Out-of-work adults keep their last job's group and are not counted, and the APS also counts unpaid family workers. Before these rows, nothing in the fit fixed how employment splits across occupations, which PolicyEngine/uk-ai-study#16 reads. With only the major groups bound, the sub-major draw left most sub-major groups, and their mix of men and women, outside the APS's confidence intervals on the calibrated frame. Regional sub-major cells stay unbound: too many of them rest on few households on the frame, with wide intervals, so binding them would stretch a few weights to fit noise. They can be revisited once the spine pools several FRS years and carries more clones. A new engine-free test pins what the occupation rows select and checks that the rows by sex nest in their major groups' regional rows. The 158 references add 158 ledger-only rows to the national compile-parity receipt, and no other compiled value moves.
32 changes: 32 additions & 0 deletions docs/uk-chronicle-feed-repin.md
Original file line number Diff line number Diff line change
Expand Up @@ -419,3 +419,35 @@ EFO editions, so a later EFO moves them: once Chronicle keeps a newer edition's
October's number leaves the feed and the windows refuse until their maps name the new table. The
high-value home stock still names `735820c`: its inputs are the same on `08962f1` (the feed-gated
fingerprint check passes), so it was not rebuilt.

The `6475380` re-pin (PolicyEngine/microcosm#1490's occupation targets, the merge of
PolicyEngine/chronicle#411 on top of `08962f1`) brought the UK facts of
PolicyEngine/chronicle#407 (73,039 rows): the ONS Annual Population Survey's people in employment
by SOC 2020 major and sub-major group (Nomis APS218, for April 2024 to March 2025, January to
December 2025 and April 2025 to March 2026) and ASHE Table 2's gross weekly and annual pay by
occupation (the 2024 and 2025 revised editions and the 2026 provisional one). It also moved the
rows to `chronicle.consumer_fact.v5` (PolicyEngine/chronicle#377, one label per dimension value):
where Chronicle's register of dimension value labels carries a value, `dimension_value_labels`
and `layout.groupby_value_label` carry the register's label, and the source package's own wording
moves to an optional `package_dimension_value_labels`. Microcosm declares the v5 row contract
beside v1 to v4; the per-row id is carried, never gated on, and labels never enter a fact key
(1,585,295 rows; the schema digest moves to `acd33a09…`). A row-by-row diff of the two artifacts
finds no row dropped and no value moved: 183,848 rows change display labels only, mostly the sex
(155,088) and property type (27,697) labels. The merge commit's tree differs from the pull request
head's, so the artifact was built from the merge commit itself.

No compiled value moves on either surface. The national and local reference files and both
compile-parity receipts are byte-identical. The national membership moves only its feed label,
and the local membership its feed label and the 1,263 DESNZ constituency keys, whose derived fact
keys hash the feed identity. The vendored resources carry the same rows under the new feed
identity, as does the DESNZ constituency resource (the same 2,526 rows and values, matched on
their source record ids); the census restates the pin, and the charter-H2 fixture moves the
parameters of the 19 stages that bind vendored resources. Both surfaces were regenerated from cuts
of the pinned artifact, as for `200bf6d` (national 1,014,028 rows, local 885,543).

The national register version was not recompiled for this entry: it hashes each spec's metadata
and hierarchy, so the v5 labels may move it on display metadata alone, and the occupation
targets that follow this pin move it in any case. The uk-candidate-eval scoring register is
therefore re-frozen before the next national solve. The high-value home stock still names
`735820c`: its inputs are the same on `6475380` (the feed-gated fingerprint check passes), so it
was not rebuilt.
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,12 @@
},
"source_fact_feed": {
"source_repo": "PolicyEngine/chronicle",
"source_commit": "08962f1b893fc1ba3b7bdd3d800c7e867318951a",
"source_commit": "64753803f9b22944a3ee8b24ba6d1fa6c26fef50",
"build": "build-bundle --suite uk -> build-consumer-artifact",
"artifact_schema_version": "policyengine_ledger.consumer_artifact.v2",
"fact_row_count": 1512256,
"facts_sha256": "11b20b4333270e269a5cbfe6302eb4986851990b340ef02d948eb71d62c12d5c",
"manifest_sha256": "96faf0e33686682cf37e8fa9511727571b3f8221f15bbc21591b799af87de722"
"fact_row_count": 1585295,
"facts_sha256": "bcb226fd07a1eba8970a69b13e87ab20c3bd90e96e02509894a65799dbd9482a",
"manifest_sha256": "801d3e5e9d7039f877a12fc45afdd2d6b52ddbb46eecc91d7bd5ff843ea5efb8"
},
"selections": [
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,14 @@
"country": "uk",
"scope": "uk_calibration",
"source_repo": "PolicyEngine/chronicle",
"source_commit": "08962f1b893fc1ba3b7bdd3d800c7e867318951a",
"source_commit": "64753803f9b22944a3ee8b24ba6d1fa6c26fef50",
"build": "build-bundle --suite uk -> build-consumer-artifact",
"artifact_schema_version": "policyengine_ledger.consumer_artifact.v2",
"consumer_fact_schema_versions": [
"chronicle.consumer_fact.v4"
"chronicle.consumer_fact.v5"
],
"consumer_fact_schema_sha256": "d953306d6f01fbc64db4372d0262d3012ee590269f8a25b276b18dca0626c6a0",
"fact_row_count": 1512256,
"facts_sha256": "11b20b4333270e269a5cbfe6302eb4986851990b340ef02d948eb71d62c12d5c",
"manifest_sha256": "96faf0e33686682cf37e8fa9511727571b3f8221f15bbc21591b799af87de722"
"consumer_fact_schema_sha256": "acd33a091cd8d192be5d264e3e94c13e00afb6fd1972e57d4576ac55a54f6970",
"fact_row_count": 1585295,
"facts_sha256": "bcb226fd07a1eba8970a69b13e87ab20c3bd90e96e02509894a65799dbd9482a",
"manifest_sha256": "801d3e5e9d7039f877a12fc45afdd2d6b52ddbb46eecc91d7bd5ff843ea5efb8"
}
Loading
Loading