-
Notifications
You must be signed in to change notification settings - Fork 201
Illinois Preschool For All (PFA) & Expansion (PFAE) #6982
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #6982 +/- ##
===========================================
+ Coverage 91.89% 100.00% +8.10%
===========================================
Files 5 19 +14
Lines 148 222 +74
Branches 14 0 -14
===========================================
+ Hits 136 222 +86
+ Misses 12 0 -12
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:
|
- PFA: Requires 1+ risk factors (was 2+) to broaden eligibility - PFAE: Requires 2+ risk factors OR highest-priority PLUS income ≤200% FPL - This models PFAE as "priority for full-day slots" rather than separate eligibility - Updated tests to reflect Illinois Medicaid coverage counting as risk factor - PFAE now represents families most likely to access full-day comprehensive services 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Clarifies that PFA/PFAE includes 5-year-olds as a simplification since PolicyEngine cannot model the September 1 kindergarten cutoff date. Per 105 ILCS 5/10-20.12, children who turn 5 on or before September 1 are kindergarten eligible; those with later birthdays remain in PFA/PFAE. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
PR Review: Illinois Preschool For All (PFA) & Expansion (PFAE)✅ Overall Assessment: APPROVEThis is a well-structured education program implementation with a sophisticated weighted point eligibility system. All CI checks pass. The implementation correctly models the ISBE enrollment form's priority factor system. 🟢 StrengthsImplementation Quality:
Reference Quality:
Test Coverage:
New Input Variables:
🟡 Should Address1. Hard-Coded Policy ThresholdFile: return basic_eligible & (has_highest_priority | (secondary_count >= 2))The # gov/states/il/isbe/pfae/eligibility/required_secondary_factor_count.yaml
values:
2024-01-01: 2This allows for policy analysis if the threshold changes. 2. Missing Critical Edge Case TestIssue: No test verifies that exactly 1 secondary factor is INELIGIBLE. The eligibility logic requires 2+ secondary factors, but there's no test confirming this boundary: - name: Ineligible - basic eligible but only 1 secondary factor
period: 2024
input:
state_code: IL
age: 4
is_born_outside_us: true # Only 1 secondary factor
employment_income: 50_000 # Above 100% FPL
output:
il_pfae_secondary_priority_factor_count: 1
il_pfae_eligible: false3. Missing Unit Test FilesThe following variables only have integration test coverage:
Consider adding dedicated unit tests. 🟢 Suggestions (Optional)1. Highest Priority Factor Test GapsThe
2. Income Boundary TestsAll three FPL thresholds (400%, 100%, 50%) lack exact boundary tests. Consider adding tests at exactly the threshold values. 3. Benefit Amount DerivationThe $3,900 and $8,500 per-child amounts are calculated from total funding / enrolled children. The reference titles document this calculation, which is good. Consider adding a code comment noting these are derived values, not statutory rates. 4. FY2024 Press Release LinkThe illinois.gov FY2024 press release URL may be returning an empty template. Verify accessibility or find an archived version. 📊 Validation Summary
📝 NotesProgram Structure (Well Documented):
Known Simplification (Documented): Verdict: APPROVE - Ready for merge. The suggestions above would strengthen the implementation but are not blocking. 🤖 Generated with Claude Code |
Summary
Fixes #6776 (PFA)
Fixes #6777 (PFAE)
Implements the Illinois Preschool For All (PFA) and Preschool For All Expansion (PFAE) programs, administered by the Illinois State Board of Education (ISBE).
Regulatory Authority
Program Overview
Note: PFA and PFAE share identical eligibility criteria. A child receives one or the other based on local program availability, not both simultaneously.
PFAE Eligibility Model
Based on the ISBE PDG Enrollment Form, PFAE uses a weighted point system:
Basic Eligibility
Highest Priority Factors (50 points each)
If a child has any one of these factors, they are directly enrolled in PFAE:
is_homelessis_in_foster_carehas_individualized_education_programil_pfae_is_deep_povertyoril_tanf > 0Secondary Priority Factors (25 points each)
Children with 2+ of these factors qualify for PFAE:
il_pfae_is_low_incomeparent_has_less_than_high_school_education(Household)il_isbe_was_teen_parent_at_first_birth(SPMUnit)is_born_outside_usis_non_english_speaking_home(Household)military_basic_pay > 0has_developmental_delayhas_no_prior_formal_early_learningEligibility Formula
Income Definition
Per ISBE Form 69-72, countable income includes:
Excluded: SNAP, FDPIR, WIC, TANF, federal education benefits, foster payments
Benefit Amounts
Calculations:
New Variables
IL ISBE Shared Variables
il_isbe_countable_incomeil_isbe_income_eligibleil_isbe_was_teen_parent_at_first_birthDemographic Input Variables
is_born_outside_ushas_no_prior_formal_early_learninghas_individualized_education_programhas_developmental_delayis_non_english_speaking_homeparent_has_less_than_high_school_educationPFA Variables
il_pfail_pfa_eligiblePFAE Eligibility Variables
il_pfae_eligibleil_pfae_basic_eligibleil_pfae_age_eligible_childPFAE Priority Variables
il_pfae_has_highest_priority_factoril_pfae_secondary_priority_factor_countil_pfae_is_deep_povertyil_pfae_is_low_incomePFAE Benefit Variables
il_pfaeParameters
gov.states.il.isbe.income.income_limit_rategov.states.il.isbe.income.countable_sourcesgov.states.il.isbe.pfa.benefit.amountgov.states.il.isbe.pfae.benefit.amountgov.states.il.isbe.pfae.eligibility.age_rangegov.states.il.isbe.pfae.eligibility.income.deep_poverty_rategov.states.il.isbe.pfae.eligibility.income.low_income_rategov.states.il.isbe.age_threshold.teen_parentTest Coverage
🤖 Generated with Claude Code