Skip to content
Open
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
8 changes: 8 additions & 0 deletions chronicle/bundle.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
BUNDLE_SOURCES_SCHEMA_VERSION = "ledger.bundle_sources.v1"
DEFAULT_BUNDLE_SOURCES = tuple(sorted(SOURCE_PACKAGE_ALIASES))
UK_BUNDLE_SOURCE_PREFIXES = (
"dfc_ni",
"dfe",
"dft",
"dwp",
Expand All @@ -37,8 +38,12 @@
"welshgov",
)
UK_BUNDLE_SOURCES = (
"dfc-ni-uc-statistics-may-2026",
"dfe-funded-early-education-childcare-2026",
"dft-bus0415-fares-index-2026",
"dft-bus05i-revenue-support-2025",
"dft-nts-vehicle-ownership-2024",
"dft-nts0705-local-bus-trips-2024",
"dwp-benefit-cap-november-2025",
"dwp-benefit-statistics-february-2026",
"dwp-pip-daily-living-foi-2025",
Expand All @@ -55,6 +60,9 @@
"dwp-uc-payment-distribution-may-2025",
"dwp-uc-scotland-youngest-child-may-2025",
"dwp-uc-two-child-limit-2025",
"hmrc-cgt-age-2025",
"hmrc-cgt-country-region-2025",
"hmrc-cgt-gain-by-income-2025",
"hmrc-cgt-size-of-gain-2025",
"hmrc-cgt-statistics-2025",
"hmrc-salary-sacrifice-reform-2029-headcounts",
Expand Down
7 changes: 7 additions & 0 deletions chronicle/source_package.py
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,9 @@
"bea/regional_personal_income_state"
),
"hmrc-spi-income-bands-2023-24": Path("hmrc/spi_income_bands_2023_24"),
"hmrc-cgt-age-2025": Path("hmrc/cgt_age_2025"),
"hmrc-cgt-country-region-2025": Path("hmrc/cgt_country_region_2025"),
"hmrc-cgt-gain-by-income-2025": Path("hmrc/cgt_gain_by_income_2025"),
"hmrc-cgt-size-of-gain-2025": Path("hmrc/cgt_size_of_gain_2025"),
"hmrc-cgt-statistics-2025": Path("hmrc/cgt_statistics_2025"),
"hmrc-spi-income-by-area-2023-24": Path("hmrc/spi_income_by_area_2023_24"),
Expand Down Expand Up @@ -133,7 +136,11 @@
"dfe-funded-early-education-childcare-2026": Path(
"dfe/funded_early_education_childcare_2026"
),
"dft-bus0415-fares-index-2026": Path("dft/bus0415_fares_index_2026"),
"dft-bus05i-revenue-support-2025": Path("dft/bus05i_revenue_support_2025"),
"dft-nts0705-local-bus-trips-2024": Path("dft/nts0705_local_bus_trips_2024"),
"dft-nts-vehicle-ownership-2024": Path("dft/nts_vehicle_ownership_2024"),
"dfc-ni-uc-statistics-may-2026": Path("dfc_ni/uc_statistics_may_2026"),
"dwp-benefit-cap-november-2025": Path("dwp/benefit_cap_november_2025"),
"dwp-benefit-statistics-february-2026": Path(
"dwp/benefit_statistics_february_2026"
Expand Down
Binary file not shown.
18 changes: 18 additions & 0 deletions db/data/dfc_ni/uc_statistics_may_2026/manifest.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
source_id: dfc_ni
package_id: dfc-ni-uc-statistics-may-2026
dataset: dfc_ni_dfc-ni-uc-statistics-may-2026
source_page: https://www.communities-ni.gov.uk/publications/universal-credit-statistics-may-2026
table: Universal Credit Statistics supplementary tables, May 2026
files:
2026:
filename: dfc-ni-uc-stats-supp-tables-may-2026.xlsx
source_url: https://www.communities-ni.gov.uk/system/files/2026-08/dfc-ni-uc-stats-supp-tables-may-2026.xlsx
sha256: b6234445d6e35ba2ceea549c687d9cbb12511436f2a42abe5323459ab2467c3a
size_bytes: 286686
fetched_at: '2026-08-27T09:00:38+00:00'
storage:
r2:
provider: r2
bucket: ledger-raw
key: raw/dfc_ni/dfc-ni-uc-statistics-may-2026/2026/b6234445d6e35ba2ceea549c687d9cbb12511436f2a42abe5323459ab2467c3a/dfc-ni-uc-stats-supp-tables-may-2026.xlsx
uri: r2://ledger-raw/raw/dfc_ni/dfc-ni-uc-statistics-may-2026/2026/b6234445d6e35ba2ceea549c687d9cbb12511436f2a42abe5323459ab2467c3a/dfc-ni-uc-stats-supp-tables-may-2026.xlsx
Binary file added db/data/dft/bus0415_fares_index_2026/bus0415.ods
Binary file not shown.
18 changes: 18 additions & 0 deletions db/data/dft/bus0415_fares_index_2026/manifest.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
source_id: dft
package_id: dft-bus0415-fares-index-2026
dataset: dft_dft-bus0415-fares-index-2026
source_page: https://www.gov.uk/government/statistical-data-sets/bus04-costs-fares-and-revenue
table: BUS0415a local bus fares index by area and quarter
files:
2026:
filename: bus0415.ods
source_url: https://assets.publishing.service.gov.uk/media/6a310ac715f2a70fac7e6006/bus0415.ods
sha256: 04721e9ade3b39c415ce2a0bcc045ec6d4ccb8afb6e33d525f619cf452bc7adf
size_bytes: 23434
fetched_at: '2026-08-26T00:00:00+00:00'
storage:
r2:
provider: r2
bucket: ledger-raw
key: raw/dft/dft-bus0415-fares-index-2026/2026/04721e9ade3b39c415ce2a0bcc045ec6d4ccb8afb6e33d525f619cf452bc7adf/bus0415.ods
uri: r2://ledger-raw/raw/dft/dft-bus0415-fares-index-2026/2026/04721e9ade3b39c415ce2a0bcc045ec6d4ccb8afb6e33d525f619cf452bc7adf/bus0415.ods
Binary file not shown.
18 changes: 18 additions & 0 deletions db/data/dft/bus05i_revenue_support_2025/manifest.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
source_id: dft
package_id: dft-bus05i-revenue-support-2025
dataset: dft_dft-bus05i-revenue-support-2025
source_page: https://www.gov.uk/government/statistical-data-sets/bus05-subsidies-and-concessions
table: BUS05ai passenger fare receipts and BUS05bi total estimated net support
files:
2025:
filename: bus05i.ods
source_url: https://assets.publishing.service.gov.uk/media/69c11f97b920af63be1c7631/bus05i.ods
sha256: a65ad97d70982bc572a8ff7415182c1b350166fc2e485e37f5678f3dbaa12fa5
size_bytes: 70528
fetched_at: '2026-08-26T00:00:00+00:00'
storage:
r2:
provider: r2
bucket: ledger-raw
key: raw/dft/dft-bus05i-revenue-support-2025/2025/a65ad97d70982bc572a8ff7415182c1b350166fc2e485e37f5678f3dbaa12fa5/bus05i.ods
uri: r2://ledger-raw/raw/dft/dft-bus05i-revenue-support-2025/2025/a65ad97d70982bc572a8ff7415182c1b350166fc2e485e37f5678f3dbaa12fa5/bus05i.ods
18 changes: 18 additions & 0 deletions db/data/dft/nts0705_local_bus_trips_2024/manifest.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
source_id: dft
package_id: dft-nts0705-local-bus-trips-2024
dataset: dft_dft-nts0705-local-bus-trips-2024
source_page: https://www.gov.uk/government/statistical-data-sets/nts07-car-ownership-and-access
table: NTS0705a average trips by household income quintile and main mode
files:
2024:
filename: nts0705.ods
source_url: https://assets.publishing.service.gov.uk/media/68a43c0a32d2c63f869343d9/nts0705.ods
sha256: b69f135d23cf3c10a3c10f6b5d4ffe1c6ae053013a36c4ad9c72b2920c438e17
size_bytes: 83621
fetched_at: '2026-08-26T00:00:00+00:00'
storage:
r2:
provider: r2
bucket: ledger-raw
key: raw/dft/dft-nts0705-local-bus-trips-2024/2024/b69f135d23cf3c10a3c10f6b5d4ffe1c6ae053013a36c4ad9c72b2920c438e17/nts0705.ods
uri: r2://ledger-raw/raw/dft/dft-nts0705-local-bus-trips-2024/2024/b69f135d23cf3c10a3c10f6b5d4ffe1c6ae053013a36c4ad9c72b2920c438e17/nts0705.ods
Binary file not shown.
Binary file not shown.
18 changes: 18 additions & 0 deletions db/data/hmrc/cgt_age_2025/manifest.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
source_id: hmrc
package_id: hmrc-cgt-age-2025
dataset: hmrc_hmrc-cgt-age-2025
source_page: https://www.gov.uk/government/statistics/capital-gains-tax-statistics
table: 'Capital Gains Tax statistics Table 6.1: individual taxpayers, gains and liabilities by age, 2023-24'
files:
2025:
filename: Table_6_2025_Age_statistics.ods
source_url: https://assets.publishing.service.gov.uk/media/687e5a33791bb4d8c309a061/Table_6_2025_Age_statistics.ods
sha256: 9a90e898fcebecd8fc7cdd503b311fcde52794c77735cf582e65e0de82652e20
size_bytes: 7092
fetched_at: '2026-08-26T00:00:00+00:00'
storage:
r2:
provider: r2
bucket: ledger-raw
key: raw/hmrc/hmrc-cgt-age-2025/2025/9a90e898fcebecd8fc7cdd503b311fcde52794c77735cf582e65e0de82652e20/Table_6_2025_Age_statistics.ods
uri: r2://ledger-raw/raw/hmrc/hmrc-cgt-age-2025/2025/9a90e898fcebecd8fc7cdd503b311fcde52794c77735cf582e65e0de82652e20/Table_6_2025_Age_statistics.ods
Binary file not shown.
19 changes: 19 additions & 0 deletions db/data/hmrc/cgt_country_region_2025/manifest.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
source_id: hmrc
package_id: hmrc-cgt-country-region-2025
dataset: hmrc_hmrc-cgt-country-region-2025
source_page: https://www.gov.uk/government/statistics/capital-gains-tax-statistics
table: 'Capital Gains Tax statistics Table 5.1: taxpayers, gains and liabilities by UK country and region,
2023-24'
files:
2025:
filename: Table_5_2025_Regional_and_country_statistics.ods
source_url: https://assets.publishing.service.gov.uk/media/6878ac7c760bf6cedaf5bd95/Table_5_2025_Regional_and_country_statistics.ods
sha256: 4e9a064ac51e0e88f7608fea3a62ed7293c4089bf948fef043784331c7187b05
size_bytes: 7439
fetched_at: '2026-08-26T00:00:00+00:00'
storage:
r2:
provider: r2
bucket: ledger-raw
key: raw/hmrc/hmrc-cgt-country-region-2025/2025/4e9a064ac51e0e88f7608fea3a62ed7293c4089bf948fef043784331c7187b05/Table_5_2025_Regional_and_country_statistics.ods
uri: r2://ledger-raw/raw/hmrc/hmrc-cgt-country-region-2025/2025/4e9a064ac51e0e88f7608fea3a62ed7293c4089bf948fef043784331c7187b05/Table_5_2025_Regional_and_country_statistics.ods
Binary file not shown.
19 changes: 19 additions & 0 deletions db/data/hmrc/cgt_gain_by_income_2025/manifest.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
source_id: hmrc
package_id: hmrc-cgt-gain-by-income-2025
dataset: hmrc_hmrc-cgt-gain-by-income-2025
source_page: https://www.gov.uk/government/statistics/capital-gains-tax-statistics
table: 'Capital Gains Tax statistics Table 3.1: individual taxpayers and gains by size of gain and taxable
income, 2023-24'
files:
2025:
filename: Table_3_2025_Size_of_gain_by_income.ods
source_url: https://assets.publishing.service.gov.uk/media/6878ac62760bf6cedaf5bd93/Table_3_2025_Size_of_gain_by_income.ods
sha256: 8e75c00bab949348a7238fea6d995f626c85e5d02813b46606dd7fea85e9d0c3
size_bytes: 11996
fetched_at: '2026-08-26T00:00:00+00:00'
storage:
r2:
provider: r2
bucket: ledger-raw
key: raw/hmrc/hmrc-cgt-gain-by-income-2025/2025/8e75c00bab949348a7238fea6d995f626c85e5d02813b46606dd7fea85e9d0c3/Table_3_2025_Size_of_gain_by_income.ods
uri: r2://ledger-raw/raw/hmrc/hmrc-cgt-gain-by-income-2025/2025/8e75c00bab949348a7238fea6d995f626c85e5d02813b46606dd7fea85e9d0c3/Table_3_2025_Size_of_gain_by_income.ods
1 change: 1 addition & 0 deletions db/pe_source_inventory.py
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@
"council_tax_bands_2024.csv",
"demographics.csv",
"dfc-ni-uc-stats-supp-tables-may-2025.ods",
"dfc-ni-uc-stats-supp-tables-may-2026.xlsx",
"incomes.csv",
"incomes_projection.csv",
"la_count_households.xlsx",
Expand Down
8 changes: 8 additions & 0 deletions docs/architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -136,6 +136,14 @@ This alignment is evidence-bearing metadata, not a Chronicle dependency on Axiom
runtime behavior. Nonlegal empirical inputs can use shared Chronicle/common concepts
and later align to Axiom or Microcosm where appropriate.

Consumer-facing source vocabulary is a compatibility contract. Keep
`source_concept` stable across package vintages when the publisher's statistical
concept has not changed; put publication-specific wording in `source_table` and
labels instead. Within a `source_name`, `measure_id` must distinguish different
statistical measures even when their publisher columns share labels such as
`band_a` or `total`. A deliberate rename requires a migration note and a
regression test for the affected consumer selector.

The `policyengine_chronicle.normalization` package owns low-assumption representation helpers:

```python
Expand Down
Loading
Loading