Repository navigation
Conversation
SSI under spousal income deeming was capped at the individual Federal benefit rate. 20 CFR 416.1163(e)(2) makes it the lesser of the couple computation and the individual rate less the claimant's own countable income, so a claimant with income of their own could get more with deeming than without it, and lower income could lower SSI. Add uncapped_ssi_without_spousal_deeming and take the lesser in ssi_if_takes_up; deem nothing while the $30 rate applies (416.1163(f)(5)). Joint claims and the ineligible spouse whose income is deemed were tied to tax-unit head and spouse roles, which go to the two oldest adults of a tax unit. Use the co-resident spouse test that resource deeming already uses (416.1801(c), 416.1806, 416.1160(d)), require both members of a joint claim to meet the citizenship condition, and combine couple income and resources over the two spouses rather than the marital unit. Fixes #10138. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
MaxGhenis
marked this pull request as ready for review
October 12, 2026 09:36
Contributor
Author
|
Local results at
A real microsimulation of the impact (merge base |
This was referenced Oct 12, 2026
Review round 1 found three regressions. Requiring the citizenship condition in ssi_claim_is_joint broke California CAPI's couple rate and Medicaid's senior/disabled countable income, which read the joint claim as the SSI couple methodology, so the joint claim and ineligible-spouse status test only aged, blind or disabled status again (still through the co-resident spouse test). The resource test keeps #10040's treatment of a citizenship-ineligible spouse through _ssi_resource_couple. Alabama's supplement read uncapped_ssi > 0 and paid when SSI was zero, so the lesser-of rule moves into uncapped_ssi before the floor. The 416.1163(f)(5) facility rule covered only the payment and is dropped for a follow-up. The invariant test drops the citizenship axis, adds mixed household sizes, and suppresses Hypothesis's slow-data check. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The test omitted tax and marital units, so the model grouped all nine disabled people together and made person0 and person1 a head-and-spouse couple, which the co-resident spouse test now reads as a joint claim. The test checks citizenship status, so each person is single. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Review round 2 found that a situation omitting marital units, with three aged adults, now pays more in MA and AK. The joint claim now covers only the head-and-spouse couple, but both supplements still summed the whole marital unit. _ssi_couple_total adds the co-resident spouse's value, which equals the marital-unit sum for units of one or two people. MA's maximum and payment, AK's payment, and AK's claim type now use it, so the household gets the same supplements as with explicit marital units ($100.86, $100.86, $128.82 in MA; $264, $264, $362 in AK). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This was referenced Oct 12, 2026
9 of 10 tasks
This was referenced Oct 26, 2026
One textual conflict, in ssi_amount_if_eligible.py: main corrected the medical treatment facility citation from 42 USC 1382(e)(1)(A) to (e)(1)(B) (#10283), while this branch moved the living-arrangement adjustment into _ssi_living_arrangement_amount.py. Keep the branch's helper call and carry main's citation into the helper. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Exercise five state supplement budgets across two households and correct Connecticut and Pennsylvania source comments.
4 tasks done
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #10138.
Summary
Apply 20 CFR 416.1163(e)(2): SSI with spousal deeming is the lesser of the couple computation and the individual benefit after the claimant's own countable income. Apply the cap inside
uncapped_ssi, so state supplements and other downstream readers receive the corrected federal shortfall.Identify SSI couples by the existing resource-deeming test for marriage and co-residence, rather than tax-unit head/spouse roles. Joint claims, couple income/resources, deemed income and facility checks use the identified spouse. The methodology predicate retains main's citizenship treatment because CAPI, Medicaid and supplements depend on it.
is_ssi_eligible_spouseremains a tax-unit-spouse label; payment calculations treat both spouses alike.Review
Round 6: the hub's independent review at the new head, pending
Round 5 fixes
Main merge and added SSI readers
Merged main
cbe322b51c6c9f791a318a32f0b093abee683fabas3765b00cdewithout conflicts: 554 files, +36,583/-627 lines since the previous merged maincce379ea00. Main brings per-person California CAPI, California food-preparation defaults and blind-rate corrections, eight heating programs (LA/ME/MO/MT/NV/PA/VT/WI), South Carolina TANF SSI exclusions, state tax-role invariance, Social Security PIA and student-loan changes, plus test/performance updates. #10532 is not pre-merged.The new CAPI readers now use the identified spouse for facility/category/payment-standard counts, CAPI membership, countable income and spouse SSI/SSP receipts. Six third-adult cases isolate each reader. The existing California supplement attribution assumes spouses share an SPM unit and retains its pro rata child-share approximation. New energy programs intentionally count household SSI receipts; SC TANF intentionally excludes individual SSI recipients and their income/resources. Corrected capped payments feed those readers consistently. Montana LIHEAP's spouse categorical gate and SSI-standard counts retain an inherited default-unit identity limitation: holding reported SSI receipt flags fixed reproduces it unchanged on main. This independent limitation remains outside the supplement/Medicaid fixes; follow-up is proposed below.
Medicaid aggregation sweep
These non-MAGI budgets follow spouse financial responsibility under 42 CFR 435.602. Pair totals replace whole-marital-unit sums; existing medically needy parental expense/deeming treatment is retained. All regressions distinguish the unrelated adult's tax/family/SPM units while omitting marital units.
medicaid_optional_senior_or_disabled_countable_income.pyis_optional_senior_or_disabled_income_eligible.pyis_optional_senior_or_disabled_asset_eligible.pyis_209b_ssi_recipient_income_eligible_for_medicaid.pyis_medically_needy_for_medicaid.pymedicaid_optional_senior_or_disabled_income_deemed_from_ineligible_spouse.pymedicaid_optional_senior_or_disabled_income_limit.pymedicaid_household_income.pyIowa facts and false defaults
ia_ssa_rcf_shares_room_with_spouseandia_ssa_rcf_received_ssi_before_entryboth default to false. No repository data builder sets or imputes either. Same-month entry does not establish a shared room; SSI awarded after separation does not establish receipt before entry. These defaults implement the supplied Iowa rulings and 441 IAC 51.4(3) / 6-B, printed p.60.For co-resident legacy situations, current or reported SSI still approximates pre-entry receipt. Separated spouses require the explicit prior-SSI fact.
January 2026, both spouses aged 70, 22 covered entry-month days:
cce379ea00The retained entry calculation uses couple SSI $1,491 - ($175 + $100 - $20) = $1,236 once, giving ($275 + $1,236) / 2 = $755.50 care income each. The later entrant retains the couple budget in their own qualifying entry month while the spouse already resident remains individual, as the supplied staggered-entry ruling directs.
Validation
Validation head:
4e4136e6ea66deab720b03677ac2e34c6895476a.464 unique tests passed in serial foreground runs, one file per process. The full invariants file, every listed state-supplement file and the supplied probes passed again after the final co-resident-parent identity correction. The Medicaid, CAPI and joint-claim files passed before that narrow correction. Every run used the supplied 4 GB/1,800-second cap, load-at-start gate of 100, thread limits of four and
OMP_WAIT_POLICY=PASSIVE.make formatpasses. No microsimulation or full local suite ran.ia_ssa.yamltest_ssi_spousal_deeming_invariants.pymedicaid_ssi_couple_three_adult.yamlca_capi_three_adult.yamlca_capi_person.yamlca_capi_payment_standard.yamlmo_ssp.yamlva_ag.yamlsd_ssp.yamlor_ssp.yamlssi_state_supplement_three_adult.yamlssi_claim_is_joint.yamlco_oap_deemed_income.yamlearlier-probes.yaml (supplied probes)All four Iowa default scenarios above were freshly recomputed at this revision; none of the reviewed values moved. CI: Pull request run 41177118616 concluded success at the validation head, with all 33 checks passed and no failed or cancelled checks. The latest exact-head Pull request run was verified as completed/success.
Mutation checks
Each mutant runs one direct helper test against a real simulation population, under the supplied 2 GB/900-second cap. Both tests pass without mutation. Both mutants were rerun and killed after the final co-resident-parent identity correction; each patch was then reversed and the source was verified clean.
test_retained_state_spouse_helpers_keep_separated_marriagetest_retained_state_spouse_helpers_exclude_cross_household_parentLimits and follow-ups
Impact
impact: pending (hub)
axiom: TheAxiomFoundation/rulespec-us#1706 queued (20 CFR 416.1163(d)-(f), 416.1801(c), 416.1806, 416.1160(d); same corpus-release blocker as #1626). Resource deeming: TheAxiomFoundation/rulespec-us#1626 queued.