Skip to content

Add Oregon LIHEAP regular heating assistance - #9743

Draft
hua7450 wants to merge 6 commits into
mainfrom
or-liheap
Draft

hua7450 wants to merge 6 commits into
mainfrom
or-liheap

Conversation

@hua7450

@hua7450 hua7450 commented Oct 1, 2026 •

Copy link
Copy Markdown
Collaborator

Adds Oregon's FY2026 regular LIHEAP heating assistance, including income eligibility, county/fuel payment tables, heat-in-rent treatment and the half payment for separate roomer/boarder/owner applications. A one-person Multnomah County household with $12,000 countable income and gas heat receives $520.

Implementation

  • Uses the state manual's corrected heating matrix, supported by the October 9, 2025 rule filing. The Clearinghouse's FY2026 matrix contains different amounts. Identical fuel tables are stored once across regions.
  • Reuses hhs_smi. Ceiling of 60% reproduces the 12 published limits; this rounding is a numerical reconciliation. Payment-band boundaries remain published parameters because a single formula does not reproduce them. The final band extends to the eligibility ceiling where the tables differ by $1.
  • Counts the SPM unit as the economic household, assuming identity/SSN verification. No SNAP immigration test or asset test is introduced. TANF income uses the annual tanf receipt variable, which applies take-up, rather than Oregon's monthly entitlement.
  • Uses existing net business income without further self-employment or work-expense deductions. Earned/unearned source lists are parameters; dividends use ordinary_dividend_income. Per-source loss flooring remains a documented modeling convention.
  • Private-disability income represents the insurer's actual payment after its SSA offset. Social Security is then counted separately; both official examples are tested without an extra deduction or input.
  • Subsidized heat-in-rent households are excluded. Other heat-in-rent households use the building's known fuel. The sole new empty input is the state dwelling arrangement.
  • Uses undated formulas and verified_years: "2026"; earlier years are unverified backfilled estimates.

Remaining coverage

Unknown county and sizes above 12 no longer make or_liheap_eligible false: the benefit remains zero because its payment-table coverage is missing. Unsupported fuel columns also return zero. Institutional residence, tribal duplicate awards and detailed income exclusions remain partial.

Minimum-delivery Fuel Payments and agency supplements are regular-assistance gaps, not crisis components. Their amounts depend on delivery requirements and local decisions that existing annual expenses do not identify. No uniform amount is invented. Cooling, crisis and equipment assistance remain excluded.

Microsimulation: the datasets carry no heating inputs, so population totals are $0 until the default heating type changes. That change affects API partners and is tracked separately in #9754; callers must send heating_type with the matching fuel bill.

Validation

27 program YAML cases cover all published heating cells and income limits, boundaries, housing, mixed households, TANF take-up and both private-insurance examples. All cases specify heating_type; not re-run locally after the review fixes, CI validates. PR remains draft. The review-fix commit floors the income band before the payment-table lookup, so a simulation that mixes an eligible Oregon household with households in other states no longer raises, and adds a two-state case.

Official sources

axiom: TheAxiomFoundation/rulespec-us#1479 queued

@codecov

codecov Bot commented Oct 1, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.00%. Comparing base (909176a) to head (1898b48).
⚠️ Report is 134 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff            @@
##              main     #9743   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files            4         8    +4     
  Lines           76       121   +45     
  Branches         2         1    -1     
=========================================
+ Hits            76       121   +45     
Flag Coverage Δ
unittests 100.00% <100.00%> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

hua7450 and others added 2 commits October 3, 2026 01:52
…tic tests

Floor the income band before the payment-table lookup so units outside Oregon index a valid key in mixed-state simulations, and add a two-state case. Place Oregon between IL and TX in programs.yaml. Give the integration cases plausible wages and heating bills with derivations from the PY2026 manual.

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

This branch has not been deployed

No deployments
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