Skip to content

Add Rhode Island state supplementation for 2026 - #10168

Open
hua7450 wants to merge 4 commits into
mainfrom
ri-ssp-2026
Open

hua7450 wants to merge 4 commits into
mainfrom
ri-ssp-2026

Conversation

@hua7450

@hua7450 hua7450 commented Oct 12, 2026

Copy link
Copy Markdown
Collaborator

What and why

Implements Rhode Island State Supplementary Payment for researched 2026 coverage, with state-specific eligibility, payment rules, and integration into benefit totals and SNAP/HUD income.

Models optional living-arrangement supplements and institutional personal-needs payments. Care certification and separate individual SSI claims require explicit inputs. Mandatory grandfathered payments and ancillary facility subsidies are outside this component.

Parameter backfilling does not establish verified historical coverage.

Related: #8542; historical backdating remains separate.

References

Additional section and page citations are included alongside the parameters and formulas.

Test plan

  • 15 source-based YAML cases passed on this separate state branch.
  • Synthetic national simulation: 153 households, 204 people, all 50 states and DC; finite nonnegative benefit and income aggregates.
  • make format, reference/registry checks, and git diff --check.
  • State changelog fragment.

axiom: needed

hua7450 and others added 3 commits October 12, 2026 14:29
…istries and tests

- Limit Category D to adult individuals; couples and children use own-household rates
- Couple table uses the individual rate where no couple rate is published (deeming uses the higher rate)
- Registry placement and comments, SNAP reference title, shorter programs.yaml note, reference fixes
- Federally administered D rounding, couple-with-income, deeming, earned-income and realistic boundary cases

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@hua7450
hua7450 marked this pull request as ready for review October 13, 2026 08:14
An input for one member gives the other members the NONE default, so
integration Case 6 and ri_ssp Case 14 now set the own-household
arrangement explicitly, as their comments intend.

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

DTrim99 commented Oct 13, 2026

Copy link
Copy Markdown
Collaborator

PR Review: Add Rhode Island state supplementation for 2026

PR #10168 (author: hua7450, head 0719ad83d5, merge-base 2e9eea7e6e). 15 files (+711/−4), 4 commits.

Summary

The PR adds Rhode Island's State Supplementary Payment (SSP):

  • Parameters. gov.states.ri.dhs.ssp.amount.individual and .couple are broken down by a new ri_ssp_living_arrangement enum. Every cell is dated 2026-01-01:
    • Category A, own household: $39.92 individual, $79.38 couple
    • Category B, household of another: $51.92 individual, $97.30 couple
    • Category D, certified residential care or assisted living: $332. The couple cell is also $332, but it is used only in the ineligible-spouse comparison.
    • Category E, Title XIX facility: $45 individual, $90 couple
  • Living arrangement. ri_ssp_living_arrangement (Person, MONTH, defined_for = StateCode.RI) is derived from the federal SSI arrangement:
    • a Medicaid facility maps to E
    • a one-third-reduction household maps to B
    • everything else maps to A
    • Category D comes only from an input.
  • Benefit. ri_ssp pays a child or a member of an eligible couple who has the D input at the Category A rate. It then calls a new shared helper, ssi_state_supplement() in variables/gov/ssa/ssi/_ssi_state_supplement.py. The helper:
    • subtracts countable income above the federal benefit rate from the supplement
    • splits an eligible couple's joint rate between the two members
    • applies the POMS SI 01320.430 lesser-of rule when income is deemed from an ineligible spouse
    • for SSA-administered Category D only, applies SSA's rounding and a $1 minimum, held in a new parameter gov.ssa.ssi.state_supplement.minimum_payment
  • Aggregates. The payment is added to household_state_benefits (all four year blocks), spm_unit_benefits, SNAP unearned income and HUD unearned income.
  • Registry and tests. There is a programs.yaml entry (partial, verified_years: "2026") and 27 YAML cases.

The policy content is right for 2026:

  • Amounts. Every amount matches R.I. Gen. Laws § 40-6-27, the 218-RICR-20-00-5 § 5.6.A table and POMS SI 01415.058 L.
  • Administration. SSA pays Category D and DHS pays A, B and E, as 218-RICR-20-00-5 § 5.1.1 and the 2026 POMS chart say.
  • Category D. Only adult individuals can be in Category D. POMS SI BOS01415.012 B.1 says the same.
  • Income and deeming. The income reduction and the deeming computation follow 20 CFR 416.2025(b)(3) and POMS SI 01320.430 D.
  • Tests and CI. All 27 cases check by hand and pass at the head. CI is green and the branch merges cleanly with main.

Two should-fix items remain, the same two as in #10174:

  • The PR body's axiom: needed isn't a valid form for a staff PR.
  • The new parameter descriptions don't follow the house template.

Critical (must fix)

None.

Should address

1. axiom: needed isn't valid here, and this PR adds a program.

  • Where: the last line of the PR body, axiom: needed.
  • The rule. main's CLAUDE.md, "Axiom Parity (required for policy changes)":
    • "Put one line in the PR body: axiom: <legal id> encoded-correct | <rulespec PR> encoded | <rulespec issue> queued | n/a: <reason>."
    • needed is reserved for external contributors, and the author is PolicyEngine staff.
    • This PR adds a new program, and none of the n/a grounds applies.
  • Nothing to point to yet.
  • Precedent.
  • Fix: file a dispatch-ready pe-parity issue on the Add AMT parameters for 2020-2023 #1467 / DC CDCC #1708 model, then add a line such as axiom: R.I. Gen. Laws § 40-6-27; 218-RICR-20-00-5 TheAxiomFoundation/rulespec-us#NNNN queued. The issue needs:
    • Module paths.
      • us-ri/statutes/40-6-27.yaml for (a)(1)(i)–(v) and (a)(3). This uses the flat naming of us-ri/statutes/44-30-103.yaml.
      • us-ri/policies/dhs/218-ricr-20-00-5/2026/state-supplemental-payment-rates.yaml for the § 5.6.A table and § 5.1.1 administration.
      • us-ri/policies/ssa/poms/si-01415-058/2026/ri-ssp-individual-state-supplement-levels.yaml for Category D. This mirrors the existing DE and DC modules.
    • Corpus citations, plus the blocker if a source isn't in the corpus yet.
    • Verbatim law: the statute and regulation text quoted under Verified correct.
    • Required outputs (Person, monthly):
      • Money parameters per category: A $39.92 / $79.38, B $51.92 / $97.30, D $332 (individual only), E $45 per individual.
      • A Judgment for the administering agency: SSA for D, DHS for A, B and E.
      • A Judgment that Category D is only for an adult individual who is not a member of an eligible couple.
      • A Money output equal to the category rate minus countable income above the federal benefit rate, floored at 0. An eligible couple is computed jointly and the result divided by 2.
    • Companion tests from the same sources, not from PolicyEngine output. The § 5.6.A combined totals are:
      • A individual: 1,033.92 = 994 + 39.92
      • B individual: 714.59 = 662.67 + 51.92
      • D: 1,326 = 994 + 332, which matches the POMS L "Total Payment Levels"
      • E: 75 = 30 + 45
      • A couple: 1,570.38 = 1,491 + 79.38
      • B couple: 1,091.30 = 994 + 97.30
      • A § 5.2.B.3.a case: an individual in Category A with countable income of 1,010, above the federal cap and below the total cap, gets 23.92.
  • Shared federal pieces. The shared helper and the minimum-payment parameter encode 20 CFR 416.2020(c) and 416.2025(b)(3). The same pieces appear in Add New Jersey state supplementation for 2026 #10157, Add New York state supplementation for 2026 #10158, Add Pennsylvania state supplementation for 2026 #10167 and Add Vermont state supplementation for 2026 #10171, so they can share one batch issue.
  • The batch. The sibling SSP PRs all carry axiom: needed and need the same fix.

2. The new parameter descriptions don't follow the house template.

  • Where:
    • policyengine_us/parameters/gov/states/ri/dhs/ssp/amount/individual.yaml:1: "Rhode Island provides these monthly state supplementary payment rates for an eligible individual."
    • .../amount/couple.yaml:1: the same sentence, ending "for an eligible couple".
  • The template. "one sentence, spell the program out fully (no acronyms), [State] [verb] ... under the [Full Program Name] program."
    • These sentences have no "this amount ... under the ... program" clause.
    • They also write the program name in lower case.
    • The sibling SSP amounts on main follow the template. For example, ga/dhs/ssp/amount.yaml: "Georgia provides this amount as the monthly supplement under the State Supplementary Payment program." And de/dhss/ssp: "Delaware provides this amount as the couple State Supplementary Payment under the State Supplementary Payment program."
  • Fix:
    • individual.yaml: description: Rhode Island provides this amount as the monthly individual payment under the State Supplementary Payment program.
    • couple.yaml: description: Rhode Island provides this amount as the monthly couple payment under the State Supplementary Payment program.
  • The shared federal parameter has the same gap. gov/ssa/ssi/state_supplement/minimum_payment.yaml:1 also has no "under the ... program" clause. A template version is: "The Social Security Administration raises a positive federally administered optional state supplement to at least this monthly amount under the Supplemental Security Income program."

Suggestions

  1. Category E before June 2023 and the deleted Category F (deferral documented in the PR body).
    • The leak. Every parameter has only a 2026-01-01 value, so backdating copies it to 2015. The probe at the head gives a Medicaid-facility resident a ri_ssp of 45 in 2015-01, 2020-01 and 2023-01.
    • The law before mid-2023 paid $20.
      • The 2015 text of § 40-6-27(a)(3) reads: "Individuals living in institutions shall receive a twenty dollar ($20.00) per month personal needs allowance from the state".
      • P.L. 2023, ch. 79, art. 9, § 3 (Article 9) strikes "twenty-dollar ($20.00)" and inserts "forty-five dollar ($45.00)".
      • Section 11 of Article 9 says "This article shall take effect upon passage". The statute's history line gives "effective June 16, 2023".
      • POMS SI BOS01415.950 A.4 and B.3 show E at $20 for an individual and $40 for a couple through 2010.
    • Categories A, B and D are right back to 2015.
      • BOS01415.950 shows A and B at $39.92, $51.92, $79.38 and $97.30 from 1/09.
      • It shows D at $332 from 10/11.
      • The 2015 statute text lists the same five amounts.
    • Category F (unmodeled). P.L. 2021, ch. 162, art. 12, § 1 (Article 12), effective July 1, 2021, deleted (a)(1)(vi).
      • (vi) covered Medicaid long-term-care recipients in Medicaid-certified assisted living: "up to $465.00", or "$797" at or below 120% of poverty.
      • POMS SI BOS01415.012 C dates this category F to January 1, 2016.
    • Fix:
      • individual.yaml MEDICAID_INSTITUTION: 2015-01-01: 20, 2023-06-16: 45
      • couple.yaml MEDICAID_INSTITUTION: 2015-01-01: 40, 2023-06-16: 90
      • Widen Rhode Island SSP 2017, 2018, 2019 #8542 (open, "Rhode Island SSP 2017, 2018, 2019") to cover E for 2015 through June 2023 and F for 2016 through June 2021.
  2. The Texas rebate reform's copy of spm_unit_benefits now omits ri_ssp.
    • Where: policyengine_us/reforms/states/tx/rebate/tx_rebate.py:53-122 redefines spm_unit_benefits nationwide with a hard-coded list. It already lacks ca_state_supplement, and after this PR it also lacks ri_ssp.
    • Probe at the head: a Rhode Island aged SSI-only single in 2027.
      • spm_unit_benefits is 14,893.30 at baseline and 14,414.26 under the Texas-only reform, a drop of 479.04.
      • spm_unit_net_income falls by the same amount.
      • household_net_income is unchanged.
    • Fix: insert "ri_ssp", # Rhode Island benefits after "fl_oss", at line 65, as spm_unit_benefits.py does. This is consistent with Add Wyoming state supplementation for 2026 #10174.
  3. Setting the living arrangement for one person resets everyone else to NONE.
    • Where: ri_ssp_living_arrangement.py:26, default_value = RISSPLivingArrangement.NONE. The enum is the only way to enter certified care.
    • Why it happens. When a variable is given as input for one member, policyengine-core fills the other members with the default instead of running the formula.
    • The author hit it.
      • The superseded run on 9ae63e3ab6 failed in Quick Feedback and states-shard-1.
      • The head commit says "An input for one member gives the other members the NONE default".
      • The fix patched only the tests: ri_ssp.yaml Case 14 and integration.yaml:154 now set INDEPENDENT explicitly.
    • Probe at the head. This is Case 14 with person 1's explicit input removed:
      • The arrangement is [NONE, RESIDENTIAL_CARE].
      • ri_ssp is 19.845 each instead of 39.69, because the NONE couple cell of 0 halves the joint rate.
      • Any other SSI recipient in such a household would get 0.
    • Fix: add a boolean input such as ri_ssp_certified_residential_care (Person, MONTH, default False) and make ri_ssp_living_arrangement formula-only, with D selected when the input is true.
      • At minimum, warn in the variable's documentation that every member's arrangement must be set.
      • This is a suggestion and not a should-fix only because the enum-with-NONE pattern is common on main (AL, DC, DE, FL, HI, ID, IN, MD, MO, NE).
  4. Write down and pin the income-attribution readings.
    • (a) Category D when there is no federal SSI.
      • Case 16 (ri_ssp.yaml:197-210) pays SSA's $1 minimum to a resident whose countable income (1,325.50) leaves no federal SSI.
      • Supporting that reading: 20 CFR 416.2025(b)(3) ("If countable income exceeds the amount of the Federal benefit rate, the State supplementary benefit will be reduced by the amount of such excess") and the POMS L total payment level of 1,326.00.
      • Cutting the other way, all in 218-RICR-20-00-5:
        • § 5.1.1.B has SSA administer D "for SSI recipients" (p. 1).
        • § 5.1.1.A.1 makes DHS "responsible for income eligibility determinations for those who are denied Federal SSI due to excess income".
        • § 5.2.B.3.c, under "State-Only Supplemental Calculation", discusses Category D (p. 3).
        • § 5.3.B.1.a mentions state-only redeterminations "for individuals receiving Category D" (p. 7).
      • Under the state-only reading, Case 16 would pay 0.50, with no minimum and no SSA rounding. The gap is under $1 a month, within a $1 band of income.
      • Fix: state the chosen reading in the ri_ssp.py:41 comment.
    • (b) Untested branches. Probes at the head:
      • Couple in a Title XIX facility: SSI 30 each and ri_ssp 45 each. The $90 couple cell is an inference, since § 5.6.A shows "N/A" for E couples. Statute (a)(3) ("Individuals living in institutions shall receive ...") and the historical couple E rate of $40 = 2 × $20 in BOS01415.950 B.3 support it.
      • Category A individual with an ineligible spouse, whose Social Security is $1,000 a month: SSI 511 and ri_ssp 39.92. The lesser-of rule picks the individual computation.
      • The same with $1,600 a month: SSI 0 and ri_ssp 0.
      • Mixed A/B couple: 44.17 each, the average of 39.69 and 48.65 under POMS SI 02005.030 G.1.
      • Fix: add these to ri_ssp.yaml.
    • (c) Integration Case 6 (integration.yaml:142-184) deems a spouse's income to an assisted-living resident. 20 CFR 416.1160(a)(1) deems only "If you live in the same household with your ineligible spouse".
      • Fix: say in the comment that both spouses live in the facility.
  5. Polish.
    • Blank lines. The PR adds a stray blank line before metadata: in household_state_benefits.yaml:412 and in hud/annual_income/sources/unearned.yaml:33. Neither relates to Rhode Island.
    • Case count. The PR body says "15 source-based YAML cases". The PR has 27: 16 in ri_ssp.yaml, 6 in integration.yaml and 5 in ri_ssp_living_arrangement.yaml.
    • Wiring assertion. No case asserts spm_unit_benefits. Integration Case 3 already checks SNAP, HUD and household_state_benefits.

Verified correct

  • Statute. R.I. Gen. Laws § 40-6-27 (current text):
    • (a)(1) sets the amounts: "(i) Individual living alone: $39.92 (ii) Individual living with others: $51.92 (iii) Couple living alone: $79.38 (iv) Couple living with others: $97.30 (v) Individual living in state-licensed assisted-living residence: $332.00"
    • (a)(3): "Individuals living in institutions shall receive a forty-five dollar ($45.00) per-month personal needs allowance from the state".
    • Every parameter cell matches, including the inferred couple E of 2 × $45.
  • Regulation. 218-RICR-20-00-5 (effective January 7, 2026):
    • § 5.6.A table (p. 13): A $39.92 / $79.38, B $51.92 / $97.30, D $332.00 (couple N/A), E $45.00 (couple N/A). The combined columns are consistent with federal amounts of 994, 1,491, 662.67, 994 and 30.
    • § 5.1.1 (p. 1): "DHS administers the State supplemental portion for ... Category A ... Category B ... Category E", and "SSA administers the State supplemental portion for SSI recipients in ... Category D". That is the PR's federal_payment_rules=category_d split.
      • The statute's (a)(2) says "As of July 1, 2010, state supplement payments shall not be federally administered". The regulation and SSA's 2026 chart both show SSA still paying D, so following them is right.
    • § 5.2.A.1 (p. 3): "Individuals eligible for an SSI benefit are automatically eligible for an SSP". That supports gating on SSI eligibility and take-up.
    • § 5.2.B.3.a: "An individual/couple who has countable income over the Federal cap but below the total cap may be eligible for the State-only Supplemental Payment". That supports reducing the supplement by income above the federal rate (Cases 5–7, Integration Cases 4–5).
    • § 5.1.1.A.1: someone who fails the 416.1205 resource limit "is not eligible for an SSI payment, Federal or State" (Case 8).
  • SSA.
    • POMS SI 01415.058 L (link): the January 2026 chart has one federally administered row, Federal code A / OS code D, FBR 994.00, state 332.00, total 1326.00. "Apply OS code D only to recipients living in residential care or assisted living facilities as certified by the Rhode Island Department of Human Services." The #l anchor resolves.
    • SI BOS01415.012 B.1: "applies to adult individuals only. Members of a couple are not eligible for this optional State supplement category." Also: "Anyone living in a State licensed residential care/assisted living facility who does not meet one of the above criteria is determined to be in optional State supplement category A." That supports the A fallback in ri_ssp.py:29-40 and Cases 13–15.
  • Federal rules in the shared helper.
    • 20 CFR 416.2020(c) (LII): "optional supplementary payment amounts of less than $1 will be raised to a dollar". That is the $1 minimum parameter.
    • POMS SI 02001.010 A.1: raise a fractional cent "only if there is a third digit"; "Do not round up the fourth digit". The floor-to-mills-then-ceil-to-cents expression matches, and SI 02001.010 A.3 says to round federal and state amounts separately.
    • 20 CFR 416.2025(b)(3) and POMS SI 01320.430 C.7 and D.1–D.3: in a deeming case, subtract the excess from "the higher of the State supplementary rates for an eligible couple or an eligible individual" and pay "the lesser of" the individual and deeming results. The helper's lines 28–42 implement this. Setting the D couple cell to $332 makes the comparison use the individual rate where no couple rate exists.
    • POMS SI 02005.030 G.1: compute couples jointly and divide by 2, and for mixed living arrangements "average their individual OSS payment". That matches the helper's couple_total averaging.
  • Kept out of SSI income. 20 CFR 416.1124(c)(2) excludes state supplementation. ri_ssp isn't added to SSI income, so there is no circularity. The rates are the state share only, so summing them with ssi doesn't double-count.
  • Counted for SNAP and HUD. 7 CFR 273.9(b)(2) counts SNAP. The PR consolidates the SNAP list's two 7 CFR 273.9 references into one entry, which follows main's one-entry-per-document rule. The HUD addition matches the batch convention.
  • Code:
    • No hard-coded policy values. The 1,000, 10 and 100 in the rounding are decimal-place shifts.
    • Vectorized throughout (where, max_, min_, select).
    • Periods are correct. YEAR flows such as countable and deemed income come in ÷12 through period. YEAR booleans use period.this_year. The MONTH benefit sums to 479.04 a year (Integration Case 3).
    • References.
      • One entry per document.
      • The #page 1,13 title in couple.yaml follows main's CLAUDE.md format for nonconsecutive pages.
      • The variable tuples carry # PDF pages 1, 13 comments.
    • Callers. ri_ssp is referenced only in the lists this PR edits.
  • Hand checks: all 27 expectations. The 2026 federal rates are $994 for an individual, $1,491 for a couple and $30 in a facility.
    • ri_ssp.yaml Cases 1–4: 39.92, 51.92, 332 and 45.
    • Case 5: $12,360 / 12 = $1,030 − $20 = $1,010 countable; that is $16 over $994; $39.92 − $16 = 23.92.
    • Case 6: $12,642 / 12 = $1,053.50 − $20 = $1,033.50; that is $39.50 over; $39.92 − $39.50 = 0.42, with no state minimum.
    • Case 7: countable $1,480 is above the $1,033.92 cap, so 0.
    • Cases 8–11: resources of $2,001, age 30, Ohio and no take-up each give 0.
    • Case 12: $60 − $20 = $40 countable; that is $10 over $30; $45 − $10 = 35.
    • Cases 13 and 14: $79.38 / 2 = 39.69 each, under Category A.
    • Case 15: a child is paid at Category A, 39.92.
    • Case 16: $1,345.50 − $20 = $1,325.50; that is $331.50 over; $332 − $331.50 = $0.50, raised to 1.
    • Integration Case 1: SSI is 1,491 / 2 = 745.50 each, and ri_ssp is 39.69 each.
    • Integration Case 2: SSI is 745.50 × 2/3 = 497 each, and ri_ssp is 97.30 / 2 = 48.65 each.
    • Integration Case 3: 39.92 × 12 = 479.04, so SNAP and HUD unearned income are 11,928 + 479.04 = 12,407.04.
    • Integration Case 4:
      • countable income: ($1,050 + $500 − $20) / 2 = $765 each
      • that is $19.50 over $745.50
      • $39.69 − $19.50 = 20.19 each. The POMS joint form gives the same: ($79.38 − $39) / 2.
    • Integration Case 5: ($2,100 − $20 − $65) / 2 = $1,007.50; that is $13.50 over; $39.92 − $13.50 = 26.42.
    • Integration Case 6:
      • deemed income: $1,600 − $20 = $1,580
      • federal SSI: $1,491 − $1,580 is negative, so 0
      • as an individual, with own income 0: 332
      • with deeming: max($332, $332) − $89 = 243
      • the lesser is 243
    • ri_ssp_living_arrangement.yaml Cases 1–5: A, B, E, A (no Medicaid majority) and NONE (Ohio).
  • Extra probe. With one spouse in a Medicaid facility, ssi_couple_computation_applies is false. The facility spouse gets SSI 30 and ri_ssp 45, and the home spouse gets SSI 994 and ri_ssp 39.92. That is right under 20 CFR 416.414(b)(3).
  • Changelog: changelog.d/ri-ssp-2026.added.md is top-level, typed added, and accurate.
  • Registry:
    • The programs.yaml entry sits under ssi_state_supplement.state_implementations, after WA.
    • partial fits the unmodeled grandfathered, supportive-care and facility-subsidy paths.
    • parameter_prefix resolves.

Batch checks

  1. Axiom line: SHOULD (Should 1). axiom: needed is invalid for a staff PR. rulespec-us has no RI SSP module or issue, so a dispatch-ready pe-parity issue and a queued line are needed.
  2. Parameter descriptions: SHOULD (Should 2). individual.yaml and couple.yaml are off-template, and so is the shared minimum_payment.yaml.
  3. Backdating: SUGGESTION (Suggestion 1). A, B and D are right back to 2015. E leaks $45 into 2015 through June 2023, where the law paid $20 (P.L. 2023 ch. 79 art. 9 § 3). Category F (2016 to June 2021) is unmodeled. The PR claims only 2026 and documents the deferral (Rhode Island SSP 2017, 2018, 2019 #8542).
  4. tx_rebate.py copy: SUGGESTION (Suggestion 2). ri_ssp is missing, which costs a Rhode Island SSI-only single 479.04 in 2027. ca_state_supplement is still missing too.
  5. Aggregate wiring: complete, with no double count. ri_ssp is in spm_unit_benefits, all four household_state_benefits blocks, HUD unearned, SNAP unearned and programs.yaml. It holds the state share only, separate from ssi.
  6. Income attribution: correct for 2026, with three readings to pin (Suggestion 4).
    • Pinned: eligible couples (joint and halved), mixed couples (averaged), ineligible-spouse deeming (the POMS lesser-of rule, D path), the child and couple fallback out of D, and one spouse in a facility (individual treatment).
    • Still to pin: OSS-only Category D, the Category A deeming path, and couple E.
  7. Sibling conflicts (branch note):
  8. CI: all 26 checks pass on the head. An earlier run on 9ae63e3ab6 failed because of the NONE default, and the head commit fixed it in the tests (see Suggestion 3).
  9. State law first: done.
    • Read the statute (current and 2015), P.L. 2021 ch. 162 art. 12, P.L. 2023 ch. 79 art. 9, 218-RICR-20-00-5 pp. 1, 3, 6, 7 and 13, POMS SI 01415.058 L, BOS01415.012, BOS01415.950, SI 01320.430, SI 02005.030 G, SI 02001.005, SI 02001.010, and 20 CFR 416.2020 and 416.2025.
    • Every 2026 amount, the administration split and the effective date check out.
    • All 27 expectations check by hand.

Axiom line assessment

Invalid (Should 1).

CI status

All 26 checks pass (gh pr checks 10168).

  • The run. Run 38399933952 (pull_request, 2026-10-13 12:47 UTC) on head 0719ad83d5. It includes PR validation, the baseline and contrib state shards, household, and Household API Partners.
  • Superseded run. Run 38367928349 on 9ae63e3ab6 failed in Quick Feedback and states-shard-1. The head commit fixed those RI test inputs.
  • Main since then. The shared files this PR depends on changed on main only in #9558, which renamed unemployment_compensation to total_unemployment_compensation in the HUD, SNAP and SSI lists, spm_unit_benefits and tx_rebate.py, and in a 3-line California programs.yaml edit. Neither touches the lines this PR adds.
  • Local run. The three new test files at the head with policyengine-core 3.33.2: 27 passed.
  • Partner tests. The PR touches none, and the Household API Partners job passes.

Branch status

  • Position: 31 commits behind main, 4 ahead.
  • Merge: git merge-tree --write-tree PolicyEngine/main 0719ad83d5 is clean (tree f04885d871).
  • Sibling conflicts. The sibling SSP PRs insert lines at the same places, in household_state_benefits.yaml, hud/.../unearned.yaml, snap/.../unearned.yaml, programs.yaml and spm_unit_benefits.py.

Verdict: REQUEST_CHANGES

@DTrim99 DTrim99 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The 2026 policy is correct: categories A, B, D and E match § 40-6-27, 218-RICR-20-00-5 § 5.6.A and POMS SI 01415.058 L, SSA pays only D, and all 27 cases check by hand. Two should items (see the comment above): (1) 'axiom: needed' isn't valid for staff and rulespec-us has no RI SSP module, so file a dispatch-ready pe-parity issue and add a queued line; (2) the individual.yaml, couple.yaml and shared minimum_payment.yaml descriptions are off the template. Notable suggestion: category E is backdated at $45 but was $20 until June 16, 2023.

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.

2 participants