Skip to content

Add liquid asset variables for SSI modeling#7329

Merged
MaxGhenis merged 9 commits intomainfrom
add-liquid-asset-variables
Feb 7, 2026
Merged

Add liquid asset variables for SSI modeling#7329
MaxGhenis merged 9 commits intomainfrom
add-liquid-asset-variables

Conversation

@MaxGhenis
Copy link
Contributor

Summary

Adds three input variables for liquid assets (imputed from SIPP in policyengine-us-data):

  • bank_account_assets: checking, savings, money market accounts
  • stock_assets: stocks and mutual funds
  • bond_assets: bonds and government securities

Updates ssi_countable_resources to calculate from these asset categories.

Why separate variables?

Instead of a single ssi_countable_resources input, we impute the underlying asset categories so:

  • Policy reforms can change what counts (e.g., SSI Restoration Act)
  • Other programs (TANF, Medicaid) can use different definitions
  • Data remains policy-neutral

Impact

With the companion policyengine-us-data PR, this enables:

  • Realistic SSI asset eligibility testing
  • Modeling proposals like SSI Restoration Act asset limit increases
  • Extending to other means-tested programs

Depends on

Companion data PR: PolicyEngine/policyengine-us-data#511

🤖 Generated with Claude Code

@MaxGhenis
Copy link
Contributor Author

Refreshing PR - CI was not running

@MaxGhenis MaxGhenis closed this Feb 7, 2026
@MaxGhenis MaxGhenis reopened this Feb 7, 2026
MaxGhenis and others added 9 commits February 7, 2026 10:47
Adds three input variables imputed from SIPP in policyengine-us-data:
- bank_account_assets: checking, savings, money market
- stock_assets: stocks and mutual funds
- bond_assets: bonds and government securities

Updates ssi_countable_resources to calculate from these asset categories,
enabling realistic asset-based eligibility testing for SSI.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Replace formula with adds attribute referencing parameter file that lists
the asset sources. This separates policy logic (which assets count) from
variable implementation.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
…sources

The USC only lists exclusions, not what counts. POMS SI 01140.xxx
explicitly defines bank accounts, stocks, and bonds as countable.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
spm_unit_cash_assets now sums bank_account_assets, stock_assets, and
bond_assets across the SPM unit. This flows through to IL AABD and
MA EAEDC which use spm_unit_cash_assets.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Remove microsimulation bypass that used random pass rate. Now that
liquid assets are imputed from SIPP, the resource test can use real
calculated values.

- Remove pass_rate.yaml parameter (no longer needed)
- Update README to reflect new methodology
- meets_ssi_resource_test now always uses ssi_countable_resources

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add takes_up_ssi_if_eligible with default_value=True
- Apply takeup multiplier in ssi.py for microsimulation
- Follows new pattern from PR #7326 (no random() in country package)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@MaxGhenis MaxGhenis force-pushed the add-liquid-asset-variables branch from da517b5 to 4f8d516 Compare February 7, 2026 15:48
@codecov
Copy link

codecov bot commented Feb 7, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 97.77%. Comparing base (a46b5a8) to head (4f8d516).
⚠️ Report is 23 commits behind head on main.

Additional details and impacted files
@@             Coverage Diff             @@
##             main    #7329       +/-   ##
===========================================
+ Coverage   86.56%   97.77%   +11.21%     
===========================================
  Files          12        8        -4     
  Lines         134       90       -44     
  Branches        0        1        +1     
===========================================
- Hits          116       88       -28     
+ Misses         18        1       -17     
- Partials        0        1        +1     
Flag Coverage Δ
unittests 97.77% <100.00%> (+11.21%) ⬆️

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.

@MaxGhenis MaxGhenis merged commit 821395c into main Feb 7, 2026
9 checks passed
@MaxGhenis MaxGhenis deleted the add-liquid-asset-variables branch February 7, 2026 18:08
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