Skip to content

UK bus fare and subsidy consumer targets from Chronicle facts #789

Description

@juaristi22

Context

PolicyEngine/chronicle#200 audited the bus fare, bus subsidy, and Capital Gains Tax inputs inherited from policyengine-uk-data. The ownership boundary is:

  • Chronicle preserves publisher artifacts and emits publisher facts.
  • Microcosm owns target profiles, fact selectors, measurement bindings, period and geography transformations, activation rules, calibration, and diagnostics.

The bus imputation stage is already scoped in #685, but Microcosm has no consumer target declarations for bus_fare_spending or bus_subsidy_spending. This issue owns that missing target-surface work. It does not duplicate the CGT issues listed below.

Chronicle #202 also introduces 14,656 monthly private-rent facts from January 2023 through June 2026, including 316 England and Wales local authorities in every month, plus 841 monthly Northern Ireland Universal Credit claimant facts from January 2023 through May 2025 for 18 PCON24 constituencies and 11 local government districts. Their Microcosm-owned selectors, measurement bindings, geography-vintage resolution, and support-aware activation belong in #759 after the contract migration in #708; Chronicle emits the facts without owning those consumer profiles.

Those local facts are not part of this issue's bus implementation, but #759's compile membership must account for them explicitly as active or deferred rather than leaving the new Chronicle rows unwired.

Verified source-to-target translation

Chronicle #202 exposes these DfT facts:

Source fact Consumer interpretation
BUS05ai passenger fare receipts, year ending March 2025: England £3,417.389m; London £1,347.435m; England outside London £2,069.954m Direct amount targets for bus_fare_spending over the matching England, London, and England-outside-London populations
BUS05bi total estimated net support, year ending March 2025: England £3,024.904m; London £1,130.214m; England outside London £1,894.690m Direct amount targets for bus_subsidy_spending over the matching populations
NTS0705a 2024 local-bus trips per person by real household-income quintile: 47.610, 37.451, 24.842, 18.452, 12.978 A possible proxy for the within-population fare-spending shape, not a direct fare-spending target
BUS0415 quarterly local-bus fare indices A possible explicit period-alignment input for passenger fare receipts, not for net support

These facts replace uk-data's hardcoded England anchors and distribution constants. They do not publish an exact UK fare-receipt or subsidy total. BUS04 operating revenue is not the same measure, and DfT does not cover Northern Ireland.

Scope

  1. Add Microcosm-owned target declarations and PolicyEngine measurement bindings for the direct BUS05ai and BUS05bi facts.
  2. Bind each direct fact to the matching geographic support. Do not apply an England fact to all UK households.
  3. Decide whether to activate the London and England-outside-London partition in addition to the England total. If all three are active, declare and test their reconciliation rather than treating overlapping constraints as independent evidence.
  4. If NTS0705a is used, encode the normalization and income-quintile mapping as an explicit consumer-side proxy operation. The target metadata and diagnostics must say that trips per person are being used to shape spending; they must not call the result a publisher-stated spending share.
  5. If BUS0415 is used for period alignment, encode the index operation in Microcosm with the source quarter, destination period, selected geography series, and deterministic tests. Do not apply the fare index to bus subsidy.
  6. Wire the profiles into the UK national registry, parity fixture, compilation tests, and calibration diagnostics with Chronicle package and fact provenance.
  7. Sequence the bus amount stage from Net-new UK stages: UC deduction attributes, bus fares, WAS debt #685 before the national calibration seam from Calibrate the UK national build from Ledger-backed targets #623, so target-fit evidence measures the exported values rather than pre-imputation placeholders.

Geography rule

The default direct targets should stop at the publisher's England support. An exact UK total remains inactive until matching measures exist for Scotland, Wales, and Northern Ireland.

If a release needs an estimated UK total before then, define it as a separate Microcosm-derived target with an explicit method and provenance. Do not overwrite or relabel the England publisher fact, and do not silently carry forward uk-data's England-to-UK population uplift.

Acceptance

  • No bus target value is copied as a literal from policyengine-uk-data; direct values resolve from a hash-pinned Chronicle consumer artifact.
  • bus_fare_spending and bus_subsidy_spending have separate concepts and measurement bindings.
  • England, London, and England-outside-London predicates compile against the intended household support, with a test that the two subareas reconcile to England within publisher precision.
  • Any NTS-based spending-shape profile is marked as proxy-derived, reports the original trips-per-person facts, and has a deterministic normalization test.
  • Any BUS0415 period transform reports the original and aligned values and cannot be selected for the subsidy target family.
  • The registry and fixture represent each bus target's active or inactive state explicitly; they do not substitute inline values or invented provenance when a required Chronicle fact is absent.
  • Target compilation fails closed when the required Chronicle package, fact, geography, period, or measurement binding is absent or ambiguous.
  • Terminal diagnostics report initial and final fit for every active bus target and preserve package ID, fact ID, profile ID, and transformation provenance.
  • An exact UK total is either inactive with a machine-readable reason or explicitly classified as a Microcosm estimate; it is never presented as a DfT fact.

Dependencies

CGT disposition from the same audit

Do not duplicate the existing CGT issues here:

HMRC Tables 4, 7, 8, and 9 remain out of scope because the current UK model exposes aggregate capital_gains, not the relief-, asset-, residential-property-, or carried-interest-specific variables those tables measure.

Out of scope

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions