Add Arizona Child Care Assistance Program#8373
Conversation
a2a08c2 to
5ce3ba2
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #8373 +/- ##
==========================================
Coverage 100.00% 100.00%
==========================================
Files 2 19 +17
Lines 36 271 +235
==========================================
+ Hits 36 271 +235
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
Critical fixes: - Correct copay daily rates at fee levels 2/3/4/6 to match CCA-0229AFY26 - Add categorical income-test bypass for foster/DCS/TANF families (R6-5-4914(A)) via new az_ccap_categorically_eligible - Remove capital_gains from countable income (excluded by R6-5-4914(G)(3)) - Add is_ccdf_immigration_eligible_child to eligible-child (45 CFR 98.20) - Correct regulation page anchors in parameters and variables Should-address: - Exclude minor-student earnings (R6-5-4914(G)(13)) and deduct child support paid (R6-5-4914(H)) from countable income - Register Arizona in programs.yaml CCDF coverage and state_implementations - Strip #page=1 anchors from the single-page CCA-1227A; improve citations - Document special-needs rate gate, CDA tier (not modeled), age<13 limit, TCC copay rule (not modeled), and activity pathways - Add test coverage: provider types, age groups, fee levels, direct unit tests, categorical bypass, and roll-up (21 -> 72 passing cases) Remove working_references.md transcription. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…into az-ccap # Conflicts: # policyengine_us/parameters/gov/hhs/ccdf/child_care_subsidy_programs.yaml # policyengine_us/programs.yaml
- Count SSI, railroad retirement, and general assistance as countable income (R6-5-4914(F)(5),(8)) - Round countable income down to the whole dollar (R6-5-4914(I)) - Exclude all of a minor student's earnings, including SSTB and farm self-employment, not just wages (R6-5-4914(G)(13)) - Restrict the without-regard-to-income / fee-exempt categorical treatment for Cash Assistance families to those employed (R6-5-4914(A)(2)) - Require adults using education as their activity to work >=20 hours/week; education alone qualifies only teen parents under 20 (R6-5-4912(A)(3)-(4)) - Move the changelog fragment to a top-level path (changelog.d/8370.added.md) - Add tests: SSI counted, farm-earnings exclusion, whole-dollar floor, teen-parent activity, corrected adult-student activity Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Count recurring cash gifts (financial_assistance) and gambling proceeds as countable income (R6-5-4914(F)(16)-(17)) - Restrict the no-work education activity exception to teen parents in secondary school (is_in_secondary_school and is_parent), not any full-time student (R6-5-4912(A)(4)) - Parameterize the teen-parent age limit (gov.states.az.hhs.ccap.eligibility .teen_parent_age_limit = 20) citing R6-5-4912(A)(4)(a) - Remove trailing blank-line-at-EOF whitespace across the AZ CCAP YAML files - Add tests: cash gifts/gambling counted, teen-parent secondary-school eligibility, and adult-college-student ineligibility Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Group reimbursement-related parameters and variables under reimbursement/ (AZ's own term, per CCA-1227A "Maximum Reimbursement Rates" / R6-5-4925) and copay variables under copay/, mirroring the Maine CCAP layout: - variables/.../ccap/reimbursement/: daily_rate, max_reimbursement, age_group, provider_type, quality_enhanced_provider, special_needs_child - variables/.../ccap/copay/: copay, copay_exempt - parameters/.../ccap/reimbursement/: rates/, age_group/, school_age_summer/ - tests moved to mirror Update the provider-type import and parameter paths (ccap.rates -> ccap.reimbursement.rates, ccap.age_group/school_age_summer -> ccap.reimbursement.*) accordingly. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
… tests - Fix az_ccap_copay vectorization: project SPMUnit fee rate to persons before multiplying by person-level arrays (avoids microsim broadcast error). - Let CPS-referred / CPS-or-DDD foster cases satisfy the activity-or-need test without employment (R6-5-4912(A)(9)). - Use weekly_hours_worked_before_lsr for the activity/categorical employment checks so labor-supply responses don't feed back into eligibility. - Correct child_age_limit reference anchor (#page=25 -> #page=26). - Add dedicated unit tests for az_ccap_eligible and az_ccap_special_needs_child, a whole-year summer reimbursement test, and edge cases (age/fee boundaries, daily-rate fallback branches, multi-child copay). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…into az-ccap # Conflicts: # policyengine_us/parameters/gov/hhs/ccdf/child_care_subsidy_programs.yaml # policyengine_us/programs.yaml
|
Holding this one back from the current CCAP merge batch (KS/IA/IN/HI/FL/ID/KY are all merged) pending a source check on a single value. In Could you confirm against CCA-1227A (page 1) whether a standalone special-needs rate row actually exists? If $89.81 is really the infant quality rate, the special-needs branch should select the age-appropriate quality rate rather than apply a flat override. Everything else verified cleanly against the cited sources — happy to merge as soon as this is confirmed or adjusted. |
Include children with an Individualized Education Program (IEP) and children with a documented developmental delay, in addition to the generic is_disabled flag, per CCA-1210B item 14 (IFSP/IEP/ISP/504 pathways). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…into az-ccap # Conflicts: # policyengine_us/programs.yaml
|
Thanks for catching this and holding it back — good instinct to double-check the value. I verified against CCA-1227A, and there is a standalone Special Needs Rates row at the bottom of the rate table:
So $89.81 is a genuine published flat rate for special-needs children of any age (birth–12), not the infant-center quality cell. The match to the infant quality rate ($64.15 × 1.4 = $89.81) is coincidental — on the prior Aug 1, 2024 sheet the Special Needs Rate was $96.23, which likewise equals that sheet's infant quality rate (×1.5, before AZ dropped the multiplier to 1.4). Both sheets list it as its own all-ages row. Per CCA-1210B item 14, the special-needs enhanced rate applies at providers with a 3–5 star Quality First rating or national accreditation — exactly the Source: https://des.az.gov/sites/default/files/dl/CCA-1227A.pdf#page=1 (Special Needs Rates section, bottom of the table) Separately, I broadened the Let me know if you'd like anything else before merging. |
Summary
Fixes #8370.
Adds Arizona's Child Care Assistance Program (CCAP), including:
az_ccap_enrolledto apply ongoing/redetermination eligibility through 85% SMI.max(0, min(pre-subsidy childcare expenses, state maximum reimbursement) - copay).Regulatory Authority
Income Eligibility Tests
az_ccap_enrolledand may qualify through fee level L7, corresponding to the ongoing 85% SMI limit.Eligible Activity
teen_parent_age_limit(20) attending secondary school (R6-5-4912(A)(4)).is_disabled) qualifies.weekly_hours_worked_before_lsr) so a reform's behavioral hours change does not feed back into eligibility.Income Deductions And Exemptions
Standards And Benefit Calculation
az_ccap_categorically_eligible(used for both the income-test bypass and the copay exemption) is formula-based fromis_tanf_enrolledcombined with an employed head/spouse,receives_or_needs_protective_services, andis_in_foster_care.az_ccap_special_needs_childis formula-based from eligible child status andis_disabled; the enhanced special-needs rate additionally requires a quality-enhanced (3-5 star / accredited) provider per CCA-1210B.Requirements Coverage
Modeling Limitations And Future Work
Files
Parameters and variables are organized into
reimbursement/(rates, age groups, school-age season),copay/,eligibility/, andincome/subfolders.policyengine_us/parameters/gov/states/az/hhs/ccap/{reimbursement,copay,eligibility,income}/...policyengine_us/variables/gov/states/az/hhs/ccap/{az_ccap.py, az_ccap_enrolled.py, reimbursement/, copay/, eligibility/, income/}policyengine_us/variables/gov/states/az/hhs/az_child_care_subsidies.pypolicyengine_us/tests/policy/baseline/gov/states/az/hhs/ccap/...policyengine_us/programs.yaml(CCDF state implementation registration)changelog.d/8370.added.mdValidation
policyengine-core test policyengine_us/tests/policy/baseline/gov/states/az/hhs/ccap -c policyengine_usmake formatKnown failing tests: none.