Skip to content

Regenerated ledger feeds fail the period contract: year-filtered bundles drop the CBO aging pivot and prior-year SOI tables #410

Description

@daphnehanse11

Found during the first off-build-machine release run (Build K staging, 2026-07-13). Fail-closed catch #1 of 3.

What happened

A feed regenerated with ledger build-bundle --year 2024 compiled a registry whose 1,486 dollar targets all failed the period contract with aging_factor_unavailable: the cbo_growth_factor_aging model needs the CBO revenue-projections income-by-source series at the TY2023 pivot (the published detail's first year) and the build year, plus prior-year SOI tables for the chained observed-growth segment — but the year filter had cut every non-2024 vintage (CBO detail down to a single year; SOI tables 1_1/1_2/1_4/2_1/4_3 skipped entirely as "not available for requested year").

Why it matters

The v8 feed carries these implicitly, so any consumer who regenerates the feed from the ledger repo — the documented deterministic path — hits this. Nothing states which (package, year) tuples the populace consumer surface requires.

Repro / fix used

Supplemental per-year bundles merged into the feed: irs_soi tables for ty2020–2023 and cbo packages for ty2023, dedup on aggregate_fact_key. Registry then compiles clean (5,712 specs, version 6ac800691458 at main 556166a).

Proposal

Either a ledger build-bundle --consumer populace-us mode that owns the required package×year set, or a checked-in requirement manifest in populace that a feed preflight validates against (family × period coverage), so the gap fails at bundle time with names instead of at registry compile with 1,486 violations.

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions