Skip to content

Add Hawaii Optional State Supplementation (OSS)#7735

Merged
PavelMakarchuk merged 9 commits intoPolicyEngine:mainfrom
mattunrath:hi-ssp
Apr 17, 2026
Merged

Add Hawaii Optional State Supplementation (OSS)#7735
PavelMakarchuk merged 9 commits intoPolicyEngine:mainfrom
mattunrath:hi-ssp

Conversation

@mattunrath
Copy link
Copy Markdown
Contributor

@mattunrath mattunrath commented Mar 8, 2026

Summary

Implements Hawaii Optional State Supplementation (OSS) — a federally-administered state supplement for SSI recipients residing in qualifying care facilities.

Per POMS SI 02005.001, the state supplement is income-reduced: when countable income exceeds the FBR, the excess reduces the supplement dollar-for-dollar. "State supplement only" cases receive $0 federal SSI but still get a reduced state supplement.

Couple rates require both spouses to be SSI-eligible and in the same qualifying facility type.

Closes #7735

Regulatory Authority

Program Overview

  • Administration: Federally administered by SSA
  • Funding: State of Hawaii
  • Eligible population: SSI-eligible persons in state-certified care facilities
  • Definition period: MONTH (consistent with GA SSP and AL SSP)

Eligibility

Requirement Source How Modeled
Must be SSI-eligible (categorical) POMS SI 01401.001 is_ssi_eligible in hi_oss_eligible
Must reside in Hawaii State program defined_for = StateCode.HI
Must be in qualifying care facility POMS SI SF01415.210 hi_oss_living_arrangement != NONE

Note: eligibility is categorical (is_ssi_eligible), not ssi > 0. "State supplement only" cases have countable income above the FBR but below the combined payment level — they receive $0 federal SSI but still get a reduced state supplement per POMS SI 02005.001.

Benefit Computation (POMS SI 02005.001)

  1. If federal SSI is payable (countable income ≤ FBR): full state supplement
  2. If countable income > FBR: supplement = payment standard − (countable income − FBR)
  3. If countable income ≥ FBR + payment standard: $0
Income range (Community Care 2025) Federal SSI Hawaii OSS Total
$0 – $967/month $967 − income $784 (full) $1,751 − income
$967 – $1,751/month $0 $1,751 − income $1,751 − income
Above $1,751/month $0 $0 $0

Payment Standards (effective Oct 2024, POMS SI 01415.057)

Year coverage: 2011, 2024 (Oct), 2025 (Oct)

Category Individual Couple (total)
Community Care (Code B) $784/month $1,905/month
Domiciliary Care I (Code H) $784/month $1,905/month
Domiciliary Care II (Code I) $892/month $2,121/month
Medicaid Institution (Code D) $45/month $90/month
No supplement (Code Z) $0 $0

Couple treatment: Couple rate / 2 per person when both spouses have a joint SSI claim, both are SSI-eligible, and both are in the same qualifying facility type. Mixed arrangements fall back to individual rates.

Living Arrangement Design

Split into two input paths:

  • State determination (hi_oss_care_facility_type): Community Care (B), Domiciliary Care I (H), Domiciliary Care II (I)
  • Federal determination (ssi_federal_living_arrangement == MEDICAL_TREATMENT_FACILITY): Auto-detects Medicaid institution (D)

hi_oss_living_arrangement is a formula combining both, matching the GA SSP pattern.

Not Modeled (by design)

What Source Why Excluded
Code Y (OSS Waived) POMS SI SF01415.210 Recipient opt-out, not simulatable
Pre-2011 payment rates Various Rates frozen 2011–2024; pre-2011 not yet parameterized

Files

New

  • variables/gov/states/hi/dhs/oss/hi_oss_care_facility_type.py — state input enum (B/H/I/NONE)
  • variables/gov/states/hi/dhs/oss/hi_oss_couple_rate_applies.py — couple rate gating (joint claim + both SSI-eligible + both in same facility)
  • tests/policy/baseline/gov/states/hi/dhs/oss/integration.yaml — 11 integration tests with real income through full federal SSI chain

Modified

  • variables/gov/states/hi/dhs/oss/hi_oss.py — income-reduced supplement via uncapped_ssi
  • variables/gov/states/hi/dhs/oss/hi_oss_eligible.py — categorical is_ssi_eligible (not ssi > 0)
  • variables/gov/states/hi/dhs/oss/hi_oss_living_arrangement.py — formula deriving from federal + state inputs
  • variables/gov/states/hi/dhs/oss/hi_oss_payment_amount.py — uses hi_oss_couple_rate_applies instead of is_married
  • parameters/gov/states/hi/dhs/oss/payment/individual/amount.yaml — fixed description, added NONE: 0
  • parameters/gov/states/hi/dhs/oss/payment/couple/amount.yaml — fixed description, added NONE: 0
  • variables/household/income/spm_unit/spm_unit_benefits.py — added hi_oss
  • All variables converted from YEAR to MONTH

Test plan

Unit tests (12 cases in hi_oss.yaml)

  • Individual in each facility type (B, H, I, D) — full supplement
  • SSI-eligible not in facility → $0
  • Not SSI-eligible in facility → $0
  • Non-Hawaii resident → $0
  • Couple both eligible, same facility → couple rate
  • Couple in Medicaid institution → couple rate
  • Asymmetric couple (one not SSI-eligible) → individual rate
  • Couple in different facility types → individual rates
  • 2023 historical rate

Integration tests (11 cases in integration.yaml)

  • Aged individual with Social Security → SSI → full OSS
  • Aged couple with Social Security → joint SSI → couple rate
  • Asymmetric couple (spouse not ABD) → individual rate
  • Disabled individual with earned income (SSI exclusions: $65 + 50%)
  • State supplement only: income $13 above FBR → OSS = $771
  • State supplement only: income $213 above FBR → OSS = $571
  • Income exceeds combined payment level → OSS = $0
  • Medicaid institution with low income → full $45 supplement
  • Medicaid institution supplement only: income $10 above $30 cap → OSS = $35
  • SSI recipient at home (no facility) → $0
  • 2023 rates with Domiciliary Care II

🤖 Generated with Claude Code

Implements Hawaii OSS per HRS Chapter 346: federally-administered state
supplement for SSI recipients in community care foster homes, domiciliary
care facilities, and Medicaid institutions. Payment varies by living
arrangement and marital status.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@codecov
Copy link
Copy Markdown

codecov bot commented Mar 8, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 94.69%. Comparing base (46eaaf1) to head (aa2a01f).
⚠️ Report is 77 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #7735      +/-   ##
==========================================
- Coverage   94.82%   94.69%   -0.14%     
==========================================
  Files           5        7       +2     
  Lines          58      113      +55     
  Branches        2        2              
==========================================
+ Hits           55      107      +52     
- Misses          1        6       +5     
+ Partials        2        0       -2     
Flag Coverage Δ
unittests 94.69% <100.00%> (-0.14%) ⬇️

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

☔ View full report in Codecov by Sentry.
📢 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 5 commits April 15, 2026 16:19
…it, tests, descriptions

- Split hi_oss_living_arrangement into formula combining hi_oss_care_facility_type
  (state determination) and hi_oss_resides_in_medicaid_institution (federal determination)
- Add hi_oss_couple_rate_applies with proper gating: ssi_claim_is_joint + both
  is_ssi_eligible + both in qualifying facility (replaces bare is_married check)
- Rewrite unit tests to use new inputs and add asymmetric couple test
- Add 9 integration tests with real income through full federal SSI chain
- Fix parameter descriptions to single-sentence format
- Add hi_oss to spm_unit_benefits

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…tests

- hi_oss_living_arrangement now derives MEDICAID_INSTITUTION from
  ssi_federal_living_arrangement == MEDICAL_TREATMENT_FACILITY (matching
  GA SSP pattern) instead of a separate boolean input
- Remove hi_oss_resides_in_medicaid_institution (replaced by federal chain)
- Integration tests use basic inputs only (ssi_lives_in_medical_treatment_facility
  + ssi_medicaid_pays_majority_of_care) — no formula overrides
- Medicaid test uses realistic low income ($10/month SS) where SSI $30/month
  cap still allows positive SSI
- Add explicit NONE: 0 entries to payment parameters

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Couple rate now requires both spouses share the same facility type.
Mixed arrangements (e.g., Community Care + Dom Care II) fall back to
individual rates — no blended couple amount exists in the POMS schedule.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Consistent with GA SSP and AL SSP patterns. SSP payments are monthly
by nature. Tests now use period: 2025-01 with monthly output values.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@hua7450 hua7450 marked this pull request as ready for review April 15, 2026 21:04
Per SSA computation rules, when countable income exceeds the FBR,
the excess reduces the state supplement dollar-for-dollar. "State
supplement only" cases receive $0 federal SSI but still get a
reduced state supplement up to the combined payment level.

- hi_oss_eligible: use is_ssi_eligible (categorical) instead of ssi > 0
- hi_oss: apply income reduction via uncapped_ssi
- Add integration tests for supplement-only band and combined level cutoff
- Update unit tests to use is_ssi_eligible instead of ssi direct input

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@hua7450 hua7450 requested a review from PavelMakarchuk April 15, 2026 23:05
hua7450 and others added 2 commits April 16, 2026 00:39
Correct effective dates: 2023-01-01 → 2011-01-01 (values frozen since
2011 per SSA report), 2025-01-01 → 2024-10-01 (per POMS footnote).
Add 2025-10-01 rates from POMS SI 01415.058. Remove trailing zeros
(651.90 → 651.9). Remove unnecessary [] from single-person test outputs.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Change MEDICAID_INSTITUTION effective date from 2024-10-01 to 2025-01-01
  in both individual and couple amount.yaml (POMS 057 footnote for Oct 2024
  applies only to codes B/H/I, not code D)
- Add POMS 056 (Jan 2024) reference to complete the 055/056/057/058 chain
- Add #e section anchors to POMS 055/057 hrefs for direct Hawaii navigation
- Normalize POMS URL casing to lowercase
- Remove unnecessary unit_size > 0 guard in hi_oss_couple_rate_applies.py

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@PavelMakarchuk PavelMakarchuk merged commit 41b87ee into PolicyEngine:main Apr 17, 2026
8 of 9 checks passed
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.

3 participants