Skip to content

Correct the uprating paragraph on the SPM methodology page - #9548

Merged
MaxGhenis merged 3 commits into
mainfrom
fix-spm-methodology-uprating-enumeration
Sep 28, 2026
Merged

MaxGhenis merged 3 commits into
mainfrom
fix-spm-methodology-uprating-enumeration

Conversation

@MaxGhenis

@MaxGhenis MaxGhenis commented Sep 20, 2026 •

Copy link
Copy Markdown
Contributor

axiom: n/a: methodology documentation page and its link test only; no policy, parameter or formula change

The uprating paragraph on the SPM poverty methodology page names six families of inputs that follow CPI-U, says workers' compensation follows employment income, and sends "every other dollar input" to CBO's adjusted gross income projection. That stopped being true when #9527 repointed 59 inputs.

What main does

Read from CountryTaxBenefitSystem().variables[*].uprating on main at 25380ed:

Series Inputs Not named on the page
gov.bls.cpi.cpi_u 53 utilities, phone and broadband, tuition, homeowners insurance and association fees, transportation, interest paid on mortgages and other loans, other care costs
SOI employment income per capita 17 hourly wage, tips, overtime premium, military and government pay, W-2 wages of qualified businesses, desired retirement contributions, disability benefits
CMS per-capita out-of-pocket spending 18 health savings account payroll contributions and the household medical expense inputs
CBO employment income per capita 1 employer_sponsored_insurance_premiums
SOI alimony income per capita 2 alimony paid and received
gov.ssa.uprating 1 veterans_benefits
CBO adjusted gross income per capita (the default) 220

Changes

  • Rewrite the three sentences from that mapping, add alimony to the income sources that follow IRS series, and link the Social Security cost-of-living index.
  • Add test_methodology_page_links_every_series_an_input_follows to test_uprating_series.py. It resolves each input's series to its authored parameter (through derived_from for the per-capita siblings) and fails when the page links neither that parameter's file nor the file or folder that holds it. On the old page it fails for gov.ssa.uprating; on the new page all 23 series pass. The test skips when the docs folder is absent, as in an installed wheel.

The test checks links, not prose, so it catches a new series that the page never mentions. It does not catch an input that moves between two series the page already links.

No model code changes.

🤖 Generated with Claude Code

MaxGhenis and others added 3 commits September 20, 2026 16:03
The page said rent, child care, child support, the energy subsidy, real
estate taxes and household assets and debts follow CPI-U, that workers'
compensation follows employment income, and that every other dollar input
follows CBO's adjusted gross income projection. Measured on main, 53 inputs
follow CPI-U (utilities, phone and broadband, tuition, insurance,
transportation and interest paid among them), 17 follow employment income,
18 follow CMS per-capita spending, employer-sponsored insurance premiums
follow CBO employment income, alimony has its own IRS series and veterans'
benefits follow the Social Security cost-of-living index.

Rewrite the paragraph from the measured mapping and add a test that fails
when an input follows a series the page does not link.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…odology page

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@MaxGhenis

Copy link
Copy Markdown
Contributor Author

Merge audit (2026-09-28 open-PR sweep): gh pr checks exit 0 at head 29a56c6; mergeable=MERGEABLE; not draft; no CHANGES_REQUESTED. Independent review: GPT-6 Astra via Subfleet (job11), verdict APPROVE: Gates pass: all 35 checks pass, MERGEABLE, not draft, reviewDecision=REVIEW_REQUIRED without change requests.; The corrected paragraph matches the authored input-to-uprating-series mappings. No production model changes, secrets or debug leftovers.; The added test checks links to authored series and handles absent installed-package documentation; its inability to validate prose is explicitly acknowledged.; Not superseded: #9525 and #9527 are predecessor changes, and local upstream/main still cont. Repo rules: Org requires passing CI and immediate pre-merge recheck; changelog fragment present; axiom n/a fits docs/tests only; squash is allowed and matches recent merges.

@MaxGhenis

Copy link
Copy Markdown
Contributor Author

Admin-merging: the only block is the required approving review, which Max cannot give on his own PR. gh pr checks exits 0, the PR is MERGEABLE, and the independent review above is APPROVE. Pinned to head 29a56c6.

@MaxGhenis
MaxGhenis merged commit d566e5d into main Sep 28, 2026
35 checks passed
@MaxGhenis
MaxGhenis deleted the fix-spm-methodology-uprating-enumeration branch September 28, 2026 15:41
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.

1 participant