Skip to content

Exclude minor child earnings from NJ CCAP countable income (Closes #8074)#8084

Merged
MaxGhenis merged 2 commits intoPolicyEngine:mainfrom
MaxGhenis:fix-8074-nj-child-income
Apr 18, 2026
Merged

Exclude minor child earnings from NJ CCAP countable income (Closes #8074)#8084
MaxGhenis merged 2 commits intoPolicyEngine:mainfrom
MaxGhenis:fix-8074-nj-child-income

Conversation

@MaxGhenis
Copy link
Copy Markdown
Contributor

Summary

  • Closes Followups: VA CCSP FDH rate age dimension; VA/NJ/CT CCAP countable-income child exclusions #8074 (Cluster B, NJ; last remaining fix in the issue).
  • N.J.A.C. 10:15 does not enumerate an explicit statutory exclusion for minor children's earnings the way VA (8VAC20-790-40(H)) and CT (RCSA 17b-749-05(b)(2)(E)) do. However, the NJ CCAP application form CC-1 (03/24) Section D "Income" collects wage and self-employment income only from the applicant and co-applicant; there is no field for minor children's earnings. This operationalizes the exclusion in the CCR&R eligibility workflow even without an explicit regulation.

Changes

  • Split countable_income.sources into:
    • earned_sources: employment_income, self_employment_income — summed only for tax-unit heads and spouses (the applicant/co-applicant on the CC-1).
    • unearned_sources: all other previously listed sources — summed across all members, since the CC-1 reports these at the family-unit level under "Other income or benefits to family unit".
  • Replace nj_ccap_countable_income's declarative adds= with a formula that applies the head/spouse filter to earned income.
  • Add 3 YAML regression tests: working teen's wages excluded, minor child entrepreneur's self-employment excluded, minor child's social_security_survivors (unearned) still counted.

Statutory / operational reference

Note: If a future N.J.A.C. 10:15 update adds an explicit minor-earnings rule, update earned_sources.yaml with the precise cutoff.

Test plan

  • policyengine-core test policyengine_us/tests/policy/baseline/gov/states/nj/njdhs/ccap/ -c policyengine_us — 134 passed (all CCAP tests green, including 3 new child-earnings cases).
  • CI green.

…cyEngine#8074)

N.J.A.C. 10:15 does not enumerate an explicit exclusion for minor
children's earnings the way VA (8VAC20-790-40(H)) and CT
(17b-749-05(b)(2)(E)) do. However, the New Jersey CCAP application
form (CC-1, 03/24), which the Child Care Resource and Referral agency
uses to determine eligibility, collects wage and self-employment
income only from the applicant and co-applicant in Section D. There
is no field on the application to report minor children's earnings,
so those earnings are operationally excluded from countable income.

Split the countable_income `sources` parameter into:
  - `earned_sources`: `employment_income`, `self_employment_income` -
    summed only for tax-unit heads/spouses (applicant/co-applicant).
  - `unearned_sources`: remaining sources - summed across all members,
    because the CC-1 reports these at the family-unit level under
    "Other income or benefits to family unit".

Replace the declarative `adds=` on `nj_ccap_countable_income` with a
formula that applies the head/spouse filter to earned income.

Adds 3 YAML regression tests: working teen's wages excluded, minor
child entrepreneur's self-employment excluded, minor child's unearned
income (social_security_survivors) remains countable.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 18, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.00%. Comparing base (05d5d97) to head (de2afc3).
⚠️ Report is 17 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##              main     #8084    +/-   ##
==========================================
  Coverage   100.00%   100.00%            
==========================================
  Files           18         1    -17     
  Lines          353        17   -336     
  Branches         4         0     -4     
==========================================
- Hits           353        17   -336     
Flag Coverage Δ
unittests 100.00% <100.00%> (ø)

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.

Reviewer for PolicyEngine#8084 noted the `is_tax_unit_head_or_spouse` filter was
broader than any plausible statutory basis — it would exclude earnings
of adult non-applicant family members (grandparents, adult siblings),
which goes beyond what either N.J.A.C. 10:15 or the CC-1 application
form implies.

Switch to the conservative `age >= 18` filter Virginia uses per
8VAC20-790-40(H). This matches:
- VA's explicit minor-earnings exclusion
- NJ CC-1 application Section D (which doesn't collect minor earnings)
- Common sense that an adult household member's wages contribute to
  family income even if they aren't the applicant

Added Case 9 that exercises the new rule: an adult non-applicant
relative's earnings still count (would have been zeroed under the
old filter).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@MaxGhenis
Copy link
Copy Markdown
Contributor Author

Addressed reviewer feedback: switched the filter from is_tax_unit_head_or_spouse to age >= 18 (matching VA's 8VAC20-790-40(H)(10) exclusion rather than a narrower applicant-only rule). Added Case 9: an adult non-applicant relative's earnings still count (distinguishes the age rule from a narrower applicant/co-applicant-only rule). 9/9 tests pass locally.

@MaxGhenis MaxGhenis merged commit 5d14017 into PolicyEngine:main Apr 18, 2026
12 of 15 checks passed
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.

Followups: VA CCSP FDH rate age dimension; VA/NJ/CT CCAP countable-income child exclusions

1 participant