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 chronicle/bundle.py
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,7 @@
"dwp-uc-two-child-limit-2025",
"hmrc-cgt-age-2026",
"hmrc-cgt-asset-type-2026",
"hmrc-cgt-badr-ir-2026",
"hmrc-cgt-carried-interest-2026",
"hmrc-cgt-country-region-2026",
"hmrc-cgt-gain-by-income-2026",
Expand Down
1 change: 1 addition & 0 deletions chronicle/source_package.py
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,7 @@
),
"hmrc-cgt-age-2026": Path("hmrc/cgt_age_2026"),
"hmrc-cgt-asset-type-2026": Path("hmrc/cgt_asset_type_2026"),
"hmrc-cgt-badr-ir-2026": Path("hmrc/cgt_badr_ir_2026"),
"hmrc-cgt-carried-interest-2026": Path("hmrc/cgt_carried_interest_2026"),
"hmrc-cgt-country-region-2026": Path("hmrc/cgt_country_region_2026"),
"hmrc-cgt-gain-by-income-2026": Path("hmrc/cgt_gain_by_income_2026"),
Expand Down
Binary file not shown.
18 changes: 18 additions & 0 deletions db/data/hmrc/cgt_badr_ir_2026/manifest.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
source_id: hmrc
package_id: hmrc-cgt-badr-ir-2026
dataset: hmrc_hmrc-cgt-badr-ir-2026
source_page: https://www.gov.uk/government/statistics/capital-gains-tax-statistics
table: 'Capital Gains Tax statistics Table 4: BADR and Investors'' Relief by size of qualifying gain'
files:
2026:
filename: Table_4_2026_Business_asset_disposal_and_investors_reliefs.ods
source_url: https://assets.publishing.service.gov.uk/media/6a7b242a347b198efd290ed7/Table_4_2026_Business_asset_disposal_and_investors_reliefs.ods
sha256: 7bd0098913e44e3c79a533690cd25ee08f627cd72935c46a874a7eab5442d5ca
size_bytes: 6559
fetched_at: '2026-09-24T15:44:57.841104+00:00'
storage:
r2:
provider: r2
bucket: ledger-raw
key: raw/uk/hmrc/hmrc-cgt-badr-ir-2026/2026/7bd0098913e44e3c79a533690cd25ee08f627cd72935c46a874a7eab5442d5ca/Table_4_2026_Business_asset_disposal_and_investors_reliefs.ods
uri: r2://ledger-raw/raw/uk/hmrc/hmrc-cgt-badr-ir-2026/2026/7bd0098913e44e3c79a533690cd25ee08f627cd72935c46a874a7eab5442d5ca/Table_4_2026_Business_asset_disposal_and_investors_reliefs.ods
2 changes: 1 addition & 1 deletion docs/pe-uk-source-checklist.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ cannot be obtained. Nothing in uk-data is absent from this table.
| ONS savings interest ([`ons_savings.py`](https://github.com/PolicyEngine/policyengine-uk-data/blob/ebf733c/policyengine_uk_data/targets/sources/ons_savings.py)) | 1 `ons/savings_interest_income` | **ported** | `ons-savings-interest-income` (8 facts, 2018–2025) | [#139](https://github.com/PolicyEngine/chronicle/pull/139) | **Same series, pinned snapshot.** Both read the [HAXV/UKEA series](https://www.ons.gov.uk/economy/grossdomesticproductgdp/timeseries/haxv/ukea); uk-data downloads at runtime and flat-fills the last actual through 2029 (**excluded, computed**); Chronicle pins the 2026-06-30 CSV release bytes. |
| Household types ([`ons_households.py`](https://github.com/PolicyEngine/policyengine-uk-data/blob/ebf733c/policyengine_uk_data/targets/sources/ons_households.py)) | household-type counts | **ported** | `ons-families-households-2025` (816 facts: Table 7 households by type, Table 5 household size, and, from [#235](https://github.com/PolicyEngine/chronicle/issues/235), Tables 1 and 3 families by family type and presence of children / number of dependent children with the published CI± half-widths and CV-category guards, UK, 2018–2025); `ons-households-by-type-country-2025` (1 fact, Scotland 2025 couple households with 3+ dependent children) | [#139](https://github.com/PolicyEngine/chronicle/pull/139), [#196](https://github.com/PolicyEngine/chronicle/issues/196) | **Same UK artifact plus country worksheet add-on.** The UK row uses `familiesandhouseholdsuk2025.xlsx` from [Families and households](https://www.ons.gov.uk/peoplepopulationandcommunity/birthsdeathsandmarriages/families/datasets/familiesandhouseholdsfamiliesandhouseholds). The #196 add-on pins [Households by type of household and family, regions and GB constituent countries](https://www.ons.gov.uk/peoplepopulationandcommunity/birthsdeathsandmarriages/families/datasets/householdsbytypeofhouseholdandfamilyregionsofenglandandgbconstituentcountries) and ports Scotland worksheet cell `B21`: 57 thousand couple households with 3+ dependent children in 2025 (`survey_aggregate`, LFS). |
| Salary-sacrifice relief ([`hmrc_salary_sacrifice.py`](https://github.com/PolicyEngine/policyengine-uk-data/blob/ebf733c/policyengine_uk_data/targets/sources/hmrc_salary_sacrifice.py)) | 3 `hmrc/salary_sacrifice_*`; #196 gross contribution base | **ported; contribution base has no publisher measure** | `hmrc-salary-sacrifice-relief-2024` (6 facts, TY2024-25) | [#139](https://github.com/PolicyEngine/chronicle/pull/139), [#196](https://github.com/PolicyEngine/chronicle/issues/196) | **Updated — uk-data's asset is dead.** uk-data pins `media/687a294e…/Tables_6_1_and_6_2.csv`, which now returns `{"status":"gone"}` (its runtime download silently drops the targets). Chronicle packages the current asset from [Private pension statistics](https://www.gov.uk/government/statistics/personal-and-stakeholder-pensions-statistics) (updated 2026-07-30). uk-data's ×1.03 growth uprating and #196's £24.72bn salary-sacrifice contribution base are **excluded (computed / no publisher measure)**; the current HMRC table prints relief values, not gross contributions. |
| CGT ([`hmrc_cgt.py`](https://github.com/PolicyEngine/policyengine-uk-data/blob/ebf733c/policyengine_uk_data/targets/sources/hmrc_cgt.py)) | CGT totals and distributions by gain, income, region, age, asset type, holding period, residential reporting channel, and carried interest | **ported** | `hmrc-cgt-statistics-2026` (342 facts); `hmrc-cgt-size-of-gain-2026` (51); `hmrc-cgt-gain-by-income-2026` (290); `hmrc-cgt-country-region-2026` (84); `hmrc-cgt-age-2026` (60); `hmrc-cgt-asset-type-2026` (171); `hmrc-cgt-residential-property-2026` (268); `hmrc-cgt-carried-interest-2026` (68) | [#139](https://github.com/PolicyEngine/chronicle/pull/139), [#196](https://github.com/PolicyEngine/chronicle/issues/196), [#202](https://github.com/PolicyEngine/chronicle/pull/202), [#272](https://github.com/PolicyEngine/chronicle/issues/272) | **Updated to the 2026 release across Tables 1–3 and 5–9.** Table 7 records sample-based TY2023-24 disposal counts, proceeds, and gains for financial and non-financial asset types and published holding-period bands. Table 8 records TY2023-24 through TY2025-26 residential-property taxpayers, returns, disposals, gains, and tax by reporting channel, taxpayer type, and tax month; each named month covers the 6th through the 5th. Table 9 records carried-interest taxpayers, gains, and tax for TY2023-24 and TY2024-25, plus the TY2024-25 gain-size and age distributions. Chronicle preserves `[Unavailable]` and `[Less than 1]` cells without emitting numeric facts. Repeated publisher margins retain distinct table lineage and equal values. HMRC replaces attachment URLs in place, so each manifest pins the 2026 bytes and checksum. Target selection, asset imputation, and calibration remain Microcosm-owned. |
| CGT ([`hmrc_cgt.py`](https://github.com/PolicyEngine/policyengine-uk-data/blob/ebf733c/policyengine_uk_data/targets/sources/hmrc_cgt.py)) | CGT totals and distributions by gain, income, region, age, asset type, holding period, residential reporting channel, carried interest, and BADR/Investors’ Relief | **ported** | `hmrc-cgt-statistics-2026` (342 facts); `hmrc-cgt-size-of-gain-2026` (51); `hmrc-cgt-gain-by-income-2026` (290); `hmrc-cgt-country-region-2026` (84); `hmrc-cgt-age-2026` (60); `hmrc-cgt-asset-type-2026` (171); `hmrc-cgt-residential-property-2026` (268); `hmrc-cgt-carried-interest-2026` (68); `hmrc-cgt-badr-ir-2026` (126) | [#139](https://github.com/PolicyEngine/chronicle/pull/139), [#196](https://github.com/PolicyEngine/chronicle/issues/196), [#202](https://github.com/PolicyEngine/chronicle/pull/202), [#272](https://github.com/PolicyEngine/chronicle/issues/272), [#287](https://github.com/PolicyEngine/chronicle/issues/287) | **Updated to the 2026 release across Tables 1–9.** Table 7 records sample-based TY2023-24 disposal counts, proceeds, and gains for financial and non-financial asset types and published holding-period bands. Table 8 records TY2023-24 through TY2025-26 residential-property taxpayers, returns, disposals, gains, and tax by reporting channel, taxpayer type, and tax month; each named month covers the 6th through the 5th. Table 9 records carried-interest taxpayers, gains, and tax for TY2023-24 and TY2024-25, plus the TY2024-25 gain-size and age distributions. Table 4 records BADR/Investors’ Relief taxpayers, qualifying gains, and tax by qualifying-gain band for TY2021-22 through TY2024-25; the distinct concepts separate these relief claims from all CGT. Chronicle preserves `[Unavailable]`, `[Less than 1]`, and `[Fewer than 1]` cells without emitting numeric facts. Repeated publisher margins retain distinct table lineage and equal values. HMRC replaces attachment URLs in place, so each manifest pins the 2026 bytes and checksum. Target selection, asset imputation, and calibration remain Microcosm-owned. |
| SPI income bands ([`hmrc_spi.py`](https://github.com/PolicyEngine/policyengine-uk-data/blob/ebf733c/policyengine_uk_data/targets/sources/hmrc_spi.py)) | 4 `hmrc/spi_*` | **ported** | `hmrc-spi-income-bands-2023` (182 facts, Tables 3.6/3.7, TY2023-24) | [#139](https://github.com/PolicyEngine/chronicle/pull/139) | **Re-pinned.** uk-data's docstring cites the summarised-accounts page; Chronicle pins the [SPI collated tables ODS](https://www.gov.uk/government/statistics/personal-incomes-statistics-for-the-tax-year-2023-to-2024) that actually carries the 13 bands × 7 income types — the same artifact populace's national HMRC stage parses (single-homing candidate). The ×1.9 property-income scale and uprated projections are **excluded (computed)**. |
| Benefit cap ([`dwp.py`](https://github.com/PolicyEngine/policyengine-uk-data/blob/ebf733c/policyengine_uk_data/targets/sources/dwp.py)) | `dwp/benefit_capped_households`; #196 total reduction | **ported; total reduction excluded (computed)** | `dwp-benefit-cap-november-2025` (15 facts, Table 4, Nov-2025) | [#139](https://github.com/PolicyEngine/chronicle/pull/139), [#196](https://github.com/PolicyEngine/chronicle/issues/196) | **Same publication, from bytes.** uk-data hand-transcribes 110,637 from the [Nov-2025 publication](https://www.gov.uk/government/statistics/benefit-cap-number-of-households-capped-to-november-2025) HTML; Chronicle parses the ODS (110,637 is the GB Total row) plus the 13 amount-capped bands. uk-data's £320.9m annualized reduction is **not** a publisher row and remains **excluded (computed)** — a midpoint-by-band annualization Microcosm/populace can re-declare over the ported band distribution. |
| Two-child limit ([`dwp.py`](https://github.com/PolicyEngine/policyengine-uk-data/blob/ebf733c/policyengine_uk_data/targets/sources/dwp.py)) | 11 `dwp/uc/two_child_limit/*` | **ported** | `dwp-uc-two-child-limit-2025` (92 facts, tables 01/03A/03B/04A/04B, Apr-2025) | [#139](https://github.com/PolicyEngine/chronicle/pull/139) | **Same publication, from bytes.** uk-data hand-transcribes from the [April-2025 publication](https://www.gov.uk/government/statistics/universal-credit-claimants-statistics-on-the-two-child-limit-policy-april-2025) HTML; Chronicle parses the ODS data tables, adding the exception-granted rows uk-data skips. uk-data's `{2026: …}` timing on Apr-2025 values is a populace-side declaration. |
Expand Down
Loading
Loading