Repository navigation
Limit Hawaii, Vermont and Kentucky TANF dependent care deductions to the care their rules allow - #10254
Conversation
HAR 17-676-54.1(c)(4) and (d)(4) and the HAR 17-676-2 definition deduct only the cost of care for each incapacitated adult in the household. The formula also deducted the unit's child care expenses and counted children in the per-person cap. Drop the child care side and convert the tests. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Code Vt. R. 13-170-220-X rule 2252.2 allows the dependent care deduction for the care of a disabled or seriously ill adult household member, and for a child who is not a member of the Reach Up household. ESD Procedure P-2230A step 2 says the same. The formula also deducted the unit's own child care expenses. Drop them and convert the tests. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…e cases 921 KAR 2:016 Section 5(3)(b)1.c allows the dependent care disregard for child care only for a KTAP case that is otherwise ineligible without it; DCBS Operations Manual Vol. III MS 2840 B.1 says CCAP must pay instead if the case remains eligible. The formula disregarded child care for every case. Add ky_ktap_ineligible_without_child_care_disregard, which compares countable income with only the incapacitated adult care disregard against the standard of need (MS 2810 B), and keep child care in the disregard only when it is true. Move the per-person countable earnings and primary-earner allocation into a shared helper so both calculations use the same steps. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
PR Review: Limit Hawaii, Vermont and Kentucky TANF dependent care deductions to the care their rules allowSummaryThe PR narrows three state TANF dependent care deductions that deducted the unit's
The PR also rewrites or adds YAML cases in all three states and adds a
Three things need fixing:
Sibling PR #10332 rewrites the same Hawaii files (see Branch status). Critical (must fix)None. Should address1. Cap each incapacitated adult's care separately (HI formula and the new KY adult variable). Both rules cap the care of each adult individually:
The code pools both the expenses and the caps:
So one adult's unused cap absorbs another adult's excess. Any member's
The pooling is pre-existing, since main pooled children and adults too. But the PR rewrites exactly these return lines, and the KY adult variable is new code. Fix:
PR #10332's Hawaii formula already caps each adult separately (Branch status). 2. KY: the "otherwise ineligible" boundary follows the manual over the regulation. Follow the regulation, or register the conflict.
The two sources say different things:
At exact equality, the two readings give different results:
Elsewhere the PR follows the regulation over the manual, which is the right call. MS 2840 B.1 (file page 162) would require "The KTAP case would be ineligible without the deduction" for "a child or an incapacitated adult". The regulation lists the incapacitated adult as its own case (1.b), and the PR applies adult care unconditionally. CONTRIBUTING.md ("Source conflicts") ranks the regulation above a manual. Fix (either):
3. Add the The body (head Suggestions
Verified correct
Axiom line assessmentThe line is missing (Should 3).
Recommended line: CI statusAll 27 checks pass at
None is pending or failing. Branch statusThe branch is 5 commits ahead of main (four change commits on 2026-10-16 and a merge of main on 2026-10-23) and 48 behind.
Sibling note. Open PR #10332 (MaxGhenis, "Fix four statute-first benefit bugs ...") also rewrites
Verdict: REQUEST_CHANGES |
DTrim99
left a comment
There was a problem hiding this comment.
The scope fixes are right for all three states (HAR 17-676-54.1 covers adults only; VT 2251.1(e)/2252.2 exclude Reach Up children; 921 KAR 2:016 5(3)(b)1.c), and all 21 expectations hand-check. Three should-address items: (1) the HI formula and the new KY adult variable pool the caps, while both rules cap each adult ($300 + $50 should give 225; the PR gives 350); (2) the KY flag uses '>=' per manual MS 2810 B, but 921 KAR 2:016 4(2)(b) says 'exceeds', so at equality the regulation gives $0 and the PR $48.13 (Case 3); (3) there's no axiom line (HI is #1865; file issues for VT and KY). Branch note: #10332 conflicts in four HI files and already caps per adult, so agree which PR carries the HI fix. Full report in the comment above.
Address DTrim99's review of #10254: - Hawaii and Kentucky cap each incapacitated adult's care separately (HAR 17-676-54.1(c)(4), (d)(4); 921 KAR 2:016 Section 5(3)(b)2). The Kentucky disregard is the adult part plus, for an otherwise ineligible case, child care up to the children's age-based caps. - The Kentucky otherwise-ineligible test uses "exceeds" (Section 4(2)(b)), so income equal to the standard of need does not trigger the child care disregard. - Record three regulation-over-manual readings as source-conflict backlog items (KY standard-of-need equality, KY adult care condition, VT order). - Fix citations (VT rule 2251.1(e), manual page numbers, HI State Plan 10.2.2), reword forced-flag test comments, and add boundary tests and a direct test file for the Kentucky adult disregard. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
# Conflicts: # source_conflicts/candidates.yaml
|
@DTrim99 thanks for the review. Every item is addressed in efa893e (new head). Item by item: Should address1. Per-adult caps (HI and KY). Fixed in efa893e.
2. KY "exceeds" boundary. Fixed in efa893e with option (a).
3.
Branch note (#10332). Not settled here. The Hawaii result now matches #10332 ($300 + $50 gives 225), but the inputs differ: #10332 adds Suggestions
Tests
🤖 Generated with Claude Code |
PR Review (round 2): Limit Hawaii, Vermont and Kentucky TANF dependent care deductions to the care their rules allowSummaryRound 1 (head All three Should items are fixed:
The five suggestions were applied or deferred with reasons. The deferred items are tracked in #10494, which I accept. Merge resolution. The hand-resolved block in Checks.
There are no open Critical or Should items. One new suggestion: say where KY still pools the children's caps. The CI run at this head is the merged-tree test. See CI status for its result. Prior findings
New findingsCritical: none. Should address: none. Suggestions
Verified
Axiom line assessmentValid. The line is
CI statusRun 40528492432 at
Branch status
All round-1 Critical and Should items are fixed, and no new Critical or Should items were found. Before merging:
Verdict: APPROVE |
hua7450
left a comment
There was a problem hiding this comment.
Requesting changes for the Kentucky equality case. The new no-child-care ineligibility check omits zero-payment ineligibility under 921 KAR 2:016 Section 9(5), which can incorrectly deny the child-care disregard and the entire grant. See the inline finding.
Resolve source_conflicts/candidates.yaml by keeping both new Kentucky entries (us-ky:kchip-phase-iii-pregnant-citizens from main and us-ky:ktap-incapacitated-adult-care-condition from this branch) in id order. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…tual 921 KAR 2:016 Section 9(5) makes a benefit group whose assistance payment equals zero ineligible. Under Section 9(4)(a) the payment is the lesser of 55% of the deficit and the payment maximum, so a case whose countable income without the child care disregard equals the standard of need is otherwise ineligible, and the Section 5(3)(b)1.c child care disregard applies. ky_ktap_ineligible_without_child_care_disregard now checks the zero payment as well as the Section 4(2)(b) excess. Update the equality tests: the January 2024 case (earnings $375, unearned $452, $300 of child care, size 2) now gets the $175 disregard, countable income $464.50 and a benefit of 0.55 x (552 - 464.50) = 48.125. Add a case one dollar below the standard of need (eligible). Remove the us-ky:ktap-standard-of-need-equality candidate: read with Section 9(5), the regulation also makes the equality case ineligible, as MS 2810 B does, so the sources agree. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
hua7450
left a comment
There was a problem hiding this comment.
The zero-payment counterfactual addresses my Kentucky equality finding, including the previously denied child-care disregard. I verified the successful current-head Kentucky baseline batch covering all 89 YAML files, including the revised equality, below-standard boundary and final-benefit tests. The requested change is resolved. Approving the scoped #10208 corrections.
Summary
Three state TANF dependent care deductions subtracted the unit's
childcare_expensesfor its own children, which the state rules do not allow. Each state's change is in its own commit; review fixes are in a later commit.hi_tanf_dependent_care_deduction): HAR 17-676-54.1(c)(4) and (d)(4) deduct "the actual cost for the care of each incapacitated adult living in the same household and receiving financial assistance", up to $175 (full time) or $165 a month. The HAR 17-676-2 definition is the same, and the State Plan 10.2.2 table lists "Cost of care for a disabled adult household member". The formula now deducts each disabled adult'scare_expenses, capped separately at $175 or $165; child care and children no longer count.vt_reach_up_dependent_care_deduction): Reach Up rule 2251.1(e) says child care provided as a Reach Up support service "does not constitute dependent care expenses and is not an allowable deduction". Rule 2252.2 (file pages 74-75) (a) covers a disabled or seriously ill adult household member, and (b) covers only a child who is not a member of the Reach Up household. ESD Procedure P-2230A step 2 says the same. The model does not track children outside the unit, so the formula now deducts onlycare_expenses, up to $175 per participant. A comment invt_reach_up_countable_earned_incomenotes that the order (disregard, then dependent care) follows rule 2251.1(c)(1).ky_ktap_dependent_care_disregard): 921 KAR 2:016 Section 5(3)(b)1 allows the disregard for (a) a child 13 or over, (b) an incapacitated adult, (c) "a KTAP case that is otherwise ineligible for KTAP without the benefit of the disregard for child care", or (d) the month of application. DCBS Operations Manual Vol. III MS 2840 B.1 adds that CCAP must be used instead if the case stays eligible without the deduction. Section 4(2)(b) makes a case ineligible when countable income "exceeds" the standard of need, and Section 9(5) makes a benefit group with a zero payment ineligible; under Section 9(4)(a) the payment is the lesser of 55% of the deficit and the payment maximum, so it is zero when countable income equals the standard of need. Changes:ky_ktap_ineligible_without_child_care_disregard: countable income with only the incapacitated adult care disregard. The case is otherwise ineligible when that income exceeds the standard of need (Section 4(2)(b)) or the payment it gives is zero (Section 9(5)), so a case at exactly the standard of need gets the child care disregard. Read together, Sections 4 and 9 agree with manual MS 2810 B ("is equal to or exceeds").ky_ktap_incapacitated_adult_care_disregard: the incapacitated adult part, which always applies, with each adult's care capped separately at $175 (Section 5(3)(b)2).ky_ktap_dependent_care_disregardis the adult part, plus child care up to the children's age-based caps when the case is otherwise ineligible.ky_ktap_earned_income_helpers.py, soky_ktap_countable_earned_incomeand the new flag use the same steps. Results do not change for the existing variables.Reproduction from the issue (parent with $1,000 a month in earnings, children 5 and 2, $1,530 a month of child care): the deduction is now $0 in all three states, and the benefit equals the no-child-care benefit (HI $518.64, VT $125.56, KY $120.18; before: $788.64, $300.56, $216.43).
Source conflicts
The model follows the regulation where the agency's manual or procedure reads differently. These are recorded as backlog items in
source_conflicts/candidates.yaml(not yet in the rulespec-us register, so the code has no markers):us-ky:ktap-incapacitated-adult-care-condition: Section 5(3)(b)1.b (adult care in every case) vs. MS 2840 B.1 (adult care only if the case is otherwise ineligible).us-vt:reach-up-dependent-care-order: rule 2251.1(c)(1) (disregard, then dependent care) vs. P-2230A (dependent care first).Overlap with #10332
#10332 also rewrites the Hawaii deduction and its tests, and gives the same per-adult result ($300 + $50 gives $225). It reads a new input,
hi_tanf_qualifying_incapacitated_adult_care_expenses; this PR readscare_expensesfor each disabled adult, as the Vermont and Kentucky formulas do. The two branches conflict in four Hawaii files, so only one PR should carry the Hawaii change.Tests
hi_tanf_dependent_care_deduction.yamlrewritten (child care cases now $0; cap and hours cases use a disabled adult; Cases 14-16 cap each adult separately: $300 + $50 gives $225, the part-time cap applies per adult, and a member who is not a disabled adult adds nothing);hi_tanf_countable_earned_income.yamlcases 2-4 use a disabled adult;integration.yamlCase 7 now shows child care does not reduce countable income ($35.76 benefit).vt_reach_up_dependent_care_deduction.yamlrewritten the same way;integration.yamlCase 10 now deducts $0 ($406.10 benefit).ky_ktap_ineligible_without_child_care_disregard.yaml(7 cases): Case 3 (income equal to the standard of need) istrue(zero payment, Section 9(5)), Case 3a ($1 below) isfalse, and Case 3b ($1 above) istrue.ky_ktap_incapacitated_adult_care_disregard.yaml(8 cases), including two adults at $300 and $50 (gives $225).ky_ktap_dependent_care_disregard.yaml: per-individual caps (two adults: $225; an unused child cap and an unused adult cap absorb nothing: $175 each) and the equality case ($175: the case is otherwise ineligible through the zero payment).integration.yaml: eligible case ($120.18), otherwise ineligible case (disregard $300, benefit $44.55), and income equal to the standard of need ($375 earnings, $452 unearned income, $300 care: the $175 disregard gives countable income $464.50 and a benefit of 0.55 × (552 − 464.50) = $48.125).trueas an input so they keep testing the caps.87f3352256) and pass here.policyengine-core test(batched per subdirectory) onstates/hi/dhs,states/hi/bessd,states/vt/dcfandstates/ky/dcbs, plusstates/oh/dcy/ccap/integration.yaml: 933 passed.tests/code_health/test_source_conflicts.py: 103 passed.Fixes #10208
axiom: TheAxiomFoundation/rulespec-us#1865 queued (HI HAR 17-676-54.1, per-adult caps; re-pin and encoder approval); TheAxiomFoundation/rulespec-us#1949 queued (VT Reach Up rules 2251.1, 2252.2; re-pin and encoder approval); TheAxiomFoundation/rulespec-us#1950 queued (KY 921 KAR 2:016 Sections 4(2)(b), 5(3)(b), 9(4)(a), 9(5); re-pin and encoder approval)
🤖 Generated with Claude Code