Repository navigation
Conversation
Sum each state's regular LIHEAP payment in a new liheap variable, add an Illinois regular heating payment without crisis assistance, add a Michigan Home Heating Credit registry entry, and record each state's cooling treatment in its registry note. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Add regular_payments.yaml to the aggregate-list integrity test, which checks that each member exists, is state-gated and is not dropped between year blocks. Say that Rhode Island plans no regular cooling payment, since its FY2027 plan still allows a leftover-funds cooling grant. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Dates the cooling guideline lag from FY2025, fixes the electric bill maximum comment, cites the EIA 2024 average bill in the tests, and adds a retiree case that checks the national liheap total. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The national `liheap` total evaluates every state's formula over a mixed-state population, which no household test does. Two patterns on main raised errors there: - 26 formula files passed options=[ADD] to an entity call. Core's Microsimulation.calculate_add rejects the keyword an entity call passes. The option is redundant: a plain read already sums a monthly variable over the year through the same Core function. - The DC and Illinois payment formulas look up a matrix by an income level that is 0 for households outside the state. Add the floor Maryland and Kansas already use. Also: - Reword the North Dakota registry note: the state reserves an optional direct cooling payment, so its cooling component is not only equipment. - Add a `liheap` case with Texas, DC and Illinois households in one simulation. - Add a code-health check against options=[ADD] and options=[DIVIDE]. - Check that every state payment in the LIHEAP registry entry is in the list `liheap` sums. Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>
PolicyEngine/policyengine-core#647 fixes the cause in Core: it lets a Microsimulation accept the keyword an entity call passes with options=[ADD] or options=[DIVIDE]. Once that is released the option works again, so a check that bans it here would be wrong. The 26 formula files stay without the option, which was redundant and lets `liheap` run on today's Core. Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>
… press report Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ogram prefix Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
PR Review: Add Virginia EAP cooling assistance electric bill paymentSummaryThis PR adds Virginia EAP Cooling Assistance's electric bill payment as The core of the PR is right. Virginia pays Cooling Assistance on top of Fuel Assistance in the same program year, so listing both payments in the national total does not double count. Every income limit I checked matches the printed tables and the 2026 figures VDSS gave the press. The vulnerable-member routes, the all-SSI exception and the homeless and zero-balance exclusions all follow Chapter J of the manual. The refactor of the two heating helpers is line-for-line identical to main and leaves heating results unchanged. The $600 for 2023 matches the VDSS release. The $365 for 2025 rests on press reports of a VDSS release, and the PR says so. For 2026 and 2027 the PR carries the $365 forward, and it says so in the parameter, the registry and the body. I found two things to fix before merge, both should-address. First, the PR follows the manual and plan where 22VAC40-680-63(B)(1) says otherwise for subsidized households whose heat is included in their rent. It records no source-conflict candidate for that reading, and the body says the regulation "sets the same criteria". Second, the I did not run anything locally. The findings rest on reading the code and sources, on hand traces, and on the CI logs for this head. CriticalNone. Should address1. The PR pays cooling to subsidized households whose heat is in their rent. The regulation excludes them, and no candidate records the choice.
2. No test pins the household-size term.
Suggestions1. Say in the documentation and the body that the annual electricity expense stands in for "the bill".
2. Label the carried-forward maximum as carried forward wherever the tests name it.
3. The UNSPECIFIED gate also turns away households whose heat is in their rent and whose fuel is unknown.
4. Renters whose cooling is included in an unsubsidized rent (application code E) are left out, with no source and no disclosure.
5. Test the vulnerable groups directly instead of through heating points.
Verified correctA separate regular cooling benefit exists in each claimed year.
Heating and cooling are paid to the same household in one year, so there is no double count.
The maximum.
The cooling income limit and the guideline lag.
Hand checks (11 expectations, from the printed tables):
Eligibility terms.
The refactor.
The national total and the registry.
Mutation coverage. By my reading each of these has a case that would fail without it:
Other checks.
Axiom line assessmentThe body says CI statusAll 36 checks pass at Branch status
Verdict: REQUEST_CHANGES |
DTrim99
left a comment
There was a problem hiding this comment.
Requesting two changes; neither is critical, and the core is right. Virginia pays Cooling Assistance in addition to Fuel Assistance ("Households can receive Cooling Assistance in addition to Fuel and Crisis Assistance", manual J.1), so the national total doesn't double count. Every income limit I checked matches the printed tables, the vulnerable-member, SSI, homeless and zero-balance rules follow Chapter J, and the heating refactor is line for line identical to main.
- Subsidized households with heat in the rent. 22VAC40-680-63(B)(1) requires a cooling household to "Meet all of the fuel assistance criteria as set forth in 22VAC40-680-20", and 20(B)(3)(a) makes "Subsidized households whose total heating costs are included in their rent" ineligible. The PR follows manual J.3.a and plan 3.3 instead and pays such a household $365, with no source-conflict candidate, and the description's "22VAC40-680-63 sets the same criteria" isn't accurate. Record the choice. By the repository's ranking the regulation's reading is the default unless the project lead rules otherwise.
- The household-size term has no test, by my reading: every case has only citizen members. The UNDOCUMENTED household in the report closes it.
Five optional suggestions follow; the most useful is saying in the documentation that the annual electricity expense stands in for "the bill". CI is green at a33d3cff29.
|
Ruling by the project lead, 2026-11-13: For Virginia's Cooling Assistance, follow manual J.3.a and FY2026 plan item 3.3: a subsidized household whose heat is included in its rent can receive cooling assistance when it pays its own cooling costs, and is excluded only when its cooling costs are in the rent (plan 3.3: "Subsidized households whose total cooling costs are included in their rent are not eligible for cooling assistance"). The reading of 22VAC40-680-63(B)(1) that would apply 22VAC40-680-20(B)(3)(a)'s exclusion of subsidized households whose total heating costs are included in their rent is not followed. Reason: the plan is the current filing and states the rule in cooling terms; 22VAC40-680-63 took effect in 2003, and section 20 was last amended the same year. Example: one person aged 62 in public housing with $18,000 of Social Security, natural gas heat included in the rent, a separate cooling cost and an $1,800 electric bill receives $365 in 2026 ( |
…n, size pin Addresses DTrim99's round-1 review; upstream main merged first. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
This push (head Should address
Suggestions
TheAxiomFoundation/rulespec-us#2190 now names this head and the round-1 CI run, with 25 cases, interpretation 6 citing the ruled candidate, interpretation 11 citing Case 15, companion test 12 updated, companion tests 13 and 14 added, and the UNSPECIFIED item removed. CI is running at |
Adds Virginia EAP Cooling Assistance's electric bill payment: the bill amount up to the statewide yearly maximum, for households with a member who is 60 or older, under 6, or disabled.
Fixes #10759
Builds on the national LIHEAP total from #10730, merged on 2026-11-12: this PR adds
va_eap_coolingtogov.hhs.liheap.regular_payments.What and why
The EAP manual, Volume IX, Chapter J:
22VAC40-680-63(B)(1) applies all the fuel assistance criteria of 22VAC40-680-20, including 20(B)(3)(a), which makes subsidized households whose heat is in their rent ineligible. Manual J.3.a applies only Chapter B sections 6-8, and plan 3.3 excludes such households only when their cooling is in the rent. The project lead ruled on 2026-11-13 to follow the manual and the plan (candidate
us-va:eap-cooling-subsidized-heat-in-rent; eligible Case 14 pins it). The FY2026 plan uses 150% of the guidelines (3.1). The Clearinghouse matrix explains that Virginia switches to the new income limits each June, for cooling. Home Office sets the maximum each year by broadcast (J.7.g).va_eap_annual_income_limitandva_eap_income_test. Heating results are unchanged.cooling/fpg_year_lag.yaml(0) andva_eap_cooling_income_limit: 2026 is $23,940 for one person, matching the reported $1,995 a month; heating's 2026 limit is $23,472.va_eap_cooling_eligible:has_cooling_expenseand a positive electricity bill;va_eap_cooling: min(electricity bill,cooling/electric_bill_maximum). The maximum is $600 for 2023, the "one-time benefit" in the VDSS release of July 5, 2023, carried into 2024, and $365 for 2025, carried into 2026 and 2027.heating_type, NONE and UNSPECIFIED included, can be paid. Regular heating still pays no unspecified fuel.has_cooling_expenseis required, the input the all-state cooling work uses for a cooling cost.Test plan
Tests were not run locally. This PR now targets
main, so CI runs them.liheaptotal. The $150 monthly test bill is about the EIA 2024 Virginia average residential bill of $148.77.us-va:eap-cooling-subsidized-heat-in-rent(ruled 2026-11-13, Add Virginia EAP cooling assistance electric bill payment #10760 (comment)). The parity issue lists the other readings (no-bill authorizations and the August 15 or 17 deadline).make format(ruff)changelog.d/Not modeled
verified_yearsis "2025".has_cooling_expenseis false for them.axiom: TheAxiomFoundation/rulespec-us#2190 queued
🤖 Generated with Claude Code