Skip to content

Add published BLS monthly CPI actuals through June 2026 and update the HHS uprating index#9100

Open
MaxGhenis wants to merge 2 commits into
mainfrom
refresh-bls-cpi-actuals
Open

Add published BLS monthly CPI actuals through June 2026 and update the HHS uprating index#9100
MaxGhenis wants to merge 2 commits into
mainfrom
refresh-bls-cpi-actuals

Conversation

@MaxGhenis

@MaxGhenis MaxGhenis commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

Fixes #9091. Follow-up to #9090 (SNAP index), which refreshed the one index this PR doesn't touch.

What

The three BLS CPI parameter files' monthly actuals ended at August 2025 while BLS has published through June 2026. This PR:

  • Adds monthly actuals for September 2025 – June 2026 to gov/bls/cpi/cpi_u.yaml (CUSR0000SA0), c_cpi_u.yaml (SUUR0000SA0), and cpi_w.yaml (CWSR0000SA0), retrieved from the BLS API 2026-07-20. October 2025 was never published (canceled release) — the gap is documented in-file and October instants carry September forward.
  • Replaces the CBO projection points those months now cover (the 2026-02-01 annual points in all three files; also 2026-05-01 in CPI-W), per the refresh protocol documented in uprating_extensions.py (get_or_ctc_cola docstring: "a monthly refresh that reaches a February replaces that instant's projection with the observed value"). Later projection points stay on the February 2026 CBO baseline.
  • Updates gov/hhs/uprating.yaml's 2025 entry from the CBO forecast (320.6) to the published calendar-2025 CPI-U average (321.9), matching the file's convention (CY average at each year's January instant, truncated to 1 dp like the existing actuals). 2026+ stay CBO forecasts.
  • Adds the BLS series references to all four files.

Downstream effects (computed from the model)

  • gov.irs.uprating (~660 references): TY2025 and TY2026 factors are byte-identical (their Sep–Aug C-CPI-U windows lie entirely in untouched history). TY2027 +0.33%, TY2028 +0.51% — e.g. the 2027 single standard deduction moves $16,500 → $16,550.
  • Oregon Kids' Credit 2027: the phase-out start falls $28,350 → $28,100 (the replaced annual projection point overstated the actual Sep 2025–Aug 2026 window); the $1,100/child amount is unchanged ($50 rounding).
  • CPI-U direct consumers (WIC, school meals, AR low-income tables, LA standard deduction, etc.): late-2025 and 2026 values shift sub-percent as flat-carried August 2025 gives way to observed months (e.g. WIC child package +$0.58/year in 2026; school-meal daily subsidy +$0.12 in FY2027 months).
  • HHS uprating fix: affects only CY2025 values of parameters projected from pre-2025 bases — head start / early head start per-slot amounts (+0.41%, e.g. TX $12,027.64 → $12,076.41). Poverty guidelines are explicit through 2026-01-01 and are unaffected.
  • SSA COLA index (gov.ssa.uprating) needed no update — its 2025Q3 actual is already encoded; 2026Q3 is legitimately still a forecast. CPI-W's only model consumer (WA millionaires-tax deduction) is unchanged.

Tests

New discriminating cases, strong-form verified (with the four parameter files reverted to main, exactly these fail, with the old values; with the refresh, all pass):

  • 2027 single standard deduction = $16,550 (was $16,500) — pins the IRS uprating path.
  • OR CTC 2027 at $28,200 AGI = $1,078 (was $1,100, no phase-out) — pins the CPI-U window refresh.
  • WIC child package June 2026 = $60.42/month (was $60.34) — pins observed monthly CPI-U.
  • Head start TX 2025 per-slot = $12,076.41 (was $12,027.64) — pins the HHS CY2025 actual.

Partner contract tests

99 pinned values across 14 files — 96 wic, plus one each of school_meal_daily_subsidy, head_start, and early_head_start (amplifi, analytics_coverage signatures and edge cases, my_friend_ben) — moved — all five affected output variables and magnitudes: wic ±$0.6–3.1/year, school_meal_daily_subsidy +$0.12, head_start/early_head_start +0.41% in 2025. Partner tree passes 630/630 before this change and after recalibration; the three-question gate was run with Max and approved (round 2; team/partner notification his). Documented comment arithmetic in the edge-case files was recomputed from model outputs.

Review

Sol (gpt-5.6-sol) cross-family adversarial review, round 1: fixed three WIC comment-arithmetic lines, the HHS convention comment, and added direct per-series BLS tests (revert-one-series now fails exactly that series' test). His remaining observation — pre-existing get_irs_cpi averages Aug–Jul while documenting the 12 months ending August — is real but predates this PR and shifts every tax year's factors; filed separately.

Deferred (tracked in #9091)

🤖 Generated with Claude Code

@MaxGhenis
MaxGhenis force-pushed the refresh-bls-cpi-actuals branch 2 times, most recently from 231ce25 to 4352aed Compare July 21, 2026 01:30
MaxGhenis and others added 2 commits July 21, 2026 09:24
…prating 2025 entry

CPI-U, Chained CPI-U, and CPI-W gain monthly actuals for September
2025-June 2026 (October 2025 was never published), replacing the CBO
projection points those months cover per the refresh protocol documented
in uprating_extensions.py. HHS uprating 2025 entry becomes the published
calendar-2025 CPI-U average (321.9). Partner contract pins recalibrated
under the partner-test gate (approved by Max).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Refresh BLS CPI monthly actuals (through June 2026) and HHS uprating across all uprating indices

1 participant