Conversation
Starting implementation of Iowa TANF (Family Investment Program). Documentation and parallel development will follow. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add Schedule of Living Costs for Iowa FIP (Family Investment Program): - Main parameter with family sizes 1-10 - Additional amount for families larger than 10 Per 441 IAC 41.28(239B), effective 7/1/2025. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add Schedule of Basic Needs for Iowa FIP: - Main parameter with family sizes 1-10 - Additional amount for families larger than 10 Per 441 IAC 41.28(239B), effective 7/1/2025. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add FIP income parameters: - 20% earned income deduction rate - 58% work incentive disregard rate - 185% gross income limit (percent of standard of need) Per 441 IAC 41.27(239B), effective 7/1/2025. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add FIP resource limits: - Applicant families: $2,000 - Recipient families: $5,000 Per 441 IAC 41.26(239B). Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add FIP variables: - ia_tanf_standard_of_need: Schedule of Living Costs by family size - ia_tanf_payment_standard: Schedule of Basic Needs by family size - ia_tanf_eligible: Overall eligibility combining demographic and income tests Per 441 IAC 41.27(239B) and 41.28(239B). Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add FIP income test variables: - ia_tanf_income_eligible: Combined income eligibility - ia_tanf_gross_income_eligible: Test 1 (185% of standard of need) - ia_tanf_net_income_eligible: Test 2 (after 20% deduction) - ia_tanf_payment_standard_eligible: Test 3 (after work incentive) Per 441 IAC 41.27(239B). Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add FIP income source parameters: - Earned income sources (employment, self-employment) - Unearned income sources (social security, SSI, unemployment, etc.) Add FIP income variables: - ia_tanf_gross_earned_income: Total earned income - ia_tanf_gross_unearned_income: Total unearned income - ia_tanf_gross_income: Combined gross income - ia_tanf_countable_income: Net income after 20% deduction and 58% work incentive Per 441 IAC 41.27(239B). Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add main ia_tanf variable that calculates the FIP benefit amount: - Benefit = Payment Standard - Countable Income - Eligible households get max(payment_standard - countable_income, 0) Per 441 IAC 41.28(239B). Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add test cases for ia_tanf: - Unit tests for benefit calculation - Integration test based on documentation example (family of 3, $800/month) - Integration test for gross income limit failure Per 441 IAC 41.27(239B) and 41.28(239B). Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Apply black formatting to ia_tanf_net_income_eligible.py Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #7171 +/- ##
============================================
+ Coverage 72.11% 100.00% +27.88%
============================================
Files 3794 12 -3782
Lines 54662 165 -54497
Branches 275 0 -275
============================================
- Hits 39418 165 -39253
+ Misses 15228 0 -15228
+ Partials 16 0 -16
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Refactored Iowa TANF implementation to use FIP (Family Investment Program) naming convention which is the official state program name. Added 11 tests covering unit tests, integration tests with various income scenarios, and edge cases including large families and non-Iowa states. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add individual test files for each Iowa FIP variable following the Arizona TANF pattern from PR PolicyEngine#7150: - ia_fip_eligible.yaml (8 tests) - ia_fip_income_eligible.yaml (8 tests) - ia_fip_payment_standard.yaml (8 tests) - ia_fip_standard_of_need.yaml (8 tests) - ia_fip_countable_income.yaml (8 tests) - ia_fip_gross_income.yaml (6 tests) - ia_fip_gross_earned_income.yaml (7 tests) - ia_fip_gross_unearned_income.yaml (10 tests) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
|
Dates for parameters values in Iowa TANF payment values 2017, 2018, 2019 #6645. @hua7450 Should I add Iowa TANF to the state level aggregation level? in |
PR Review - Iowa Family Investment Program (FIP/TANF) Implementation🔴 Critical Issues (Must Fix Before Merge)None identified. The implementation correctly follows Iowa Administrative Code regulations. 🟡 Should Address1. Missing Dedicated Test FilesTwo variables with formulas lack dedicated unit test files:
Action: Create dedicated test files for these variables. 2. Missing Boundary Tests at Exact ThresholdsThe implementation uses
3. Reference Format IssuesSeveral parameter files have inline comments in href fields: # Current (unconventional):
href: https://hhs.iowa.gov/media/17445/download?inline#page=7 # (3)
# Should be:
- title: Iowa TANF State Plan 2025, Section (3)
href: https://hhs.iowa.gov/media/17445/download?inline#page=7Files affected: 4. Missing Page Anchors on PDF ReferencesFiles:
5. Description TypoFile:
🟢 Suggestions
✅ What's Implemented Correctly
Validation Summary
Three-Step Income Eligibility VerifiedThe implementation correctly handles Iowa's unique three-step income test:
Recipients skip Test 2, applicants must pass all three. Test Coverage: 68 Tests Passing
Manual Calculation VerificationScenario 2 (Family of 2, $800/month earned):
Test 1: $800 ≤ $1,330.15 ✓ Next StepsTo auto-fix issues: Or address manually:
🤖 Generated with Claude Code - Complete Review Plugin |
- Update all parameter effective dates from 2017-10-27 to 2017-01-01 - Rename ia_fip_resource_eligible to ia_fip_resources_eligible - Add #page=1 anchor to resource limit PDF references - Fix typo in need_standard/additional.yaml description - Create eligibility/ folder and move eligibility variables - Break down ia_fip_income_eligible into sub-components: - ia_fip_gross_income_eligible (Test 1) - ia_fip_net_income_eligible (Test 2) - ia_fip_countable_income_eligible (Test 3) - Add comprehensive test files for new variables - Remove unnecessary test files for adds-only variables Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
…into pr/llennemann/7171
Summary
Implements Iowa's Family Investment Program (FIP), the state's TANF cash assistance program.
Closes #7163
Closes #6645
Regulatory Authority
Income Eligibility Tests
Iowa FIP uses a three-step income eligibility process for applicants and a two-step process for continuing recipients:
Test 1: Gross Income Test (All)
Test 2: Net Income Test (Applicants Only)
Test 3: Countable Income Test (All)
Income Deductions & Exemptions
Income Standards
Source: IAC 441-41.28(2)
Resource Limits
Benefit Calculation
Where:
Source: IAC 441-41.27(2)
Historical Note
Iowa's FIP payment standards have remained unchanged since at least January 1997 (source: 1998 Green Book Table 7-8). The work incentive disregard was increased from 50% to 58% effective August 1, 2007.