Repository navigation
Conversation
The federal standard deduction and 17 state formulas read only whether the tax-unit head is claimed elsewhere, so a joint return where one spouse can be claimed was taxed differently depending on which spouse was labelled head. Each formula now applies its jurisdiction's rule for that case (either spouse, single filers only, per spouse, or only when every filer is claimed), using two new label-independent helpers. Adds swap-pair YAML cases and a Hypothesis property test. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… barred The New Mexico, Maine and Hawaii renters gates counted filers who are not claimed elsewhere, so a tax unit with neither a head nor a spouse (252 in the default dataset) looked like one whose every filer was claimed. A new helper, every_filer_is_dependent_elsewhere, requires a claimed filer and no unclaimed one. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ss EITC - Hawaii's dependent standard deduction uses earned income net of the deductible part of self-employment tax, as the N-11 worksheet does. - New Mexico's medical care credit needs a filer who is both 65 or older and not a dependent when a filer is a dependent elsewhere (NMSA 7-2-18.13). - The federal EITC without a qualifying child requires that no filer can be claimed as a dependent (IRC 32(c)(1)(A)(ii)(III), Publication 596), so Missouri's working family credit no longer reaches such a couple. - Hawaii's food/excise credit keeps minor children receiving public support (HRS 235-55.85(c)) on a joint return where one spouse can be claimed. - Comments label the readings the law does not settle, and the property test covers the EITC and the food/excise exemption amount. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… meaning - The federal and Oregon dependent worksheets use earned income net of the deductible part of self-employment tax, as Hawaii's now does. - Hawaii's food/excise minor-child count excludes children who can be claimed by another taxpayer and the filers themselves (Form N-311 line 3). - claimed_as_dependent_on_another_return documents what it stands for: a §151 deduction for the person is allowable to another taxpayer, so a person whose would-be claimer files only for a refund is not one (Publications 501 and 596); rules on actually being claimed read it too. - Hawaii's renters comment labels the mixed joint reading as an inference; the Hawaii dependent threshold cites HRS 235-2.4(a)(3) on its page. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A filer who can be claimed on another return is treated as having no dependents (IRC 152(b)(1); on a joint return either spouse counts) and has no personal exemption (IRC 151(d)(2)); one who is claimed gets no education credits (25A(g)(3)), student loan interest deduction (221(c)) or recovery rebate (6428(d)(2), 6428A(d)(2), 6428B(c)(2)). The model read none of these. Now the child tax credit and credit for other dependents, the under-13 child and dependent care qualifying person, exemptions_count and its RI, DE, OH, OR, WI, HI and NM readers, the recovery rebates, the education credits and the student loan interest deduction apply them symmetrically for joint returns. Georgia keeps its own counts; the HI, WI and Treasury exemption reforms follow the corrected count. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Property tax relief (R.I. Gen. Laws 44-33-3): the claimant is a filer aged 65 or older or disabled who is not claimed as a dependent; household members choose the claimant, so either spouse qualifies, but the age or disability and the dependency test belong to the same person. - 2021-return child rebate (44-30-103(b)(1)): only children the taxpayer "validly claims as a dependent", and a return with a claimable filer has none (IRC 152(b)(1)). The exemptions, EITC and care credit already follow the federal fixes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ndent The dependent exemption (S.C. Code 12-6-1140(13): dependents must meet IRC 151 and 152) and the under-six deduction (12-6-1160) are zero on a return where the filer, or either joint spouse, can be claimed (IRC 152(b)(1)). The EITC and care credit already follow the federal fixes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The taxpayer credit's qualifying dependents (Utah Code 59-10-1018(1)(c): those for whom the claimant is allowed an IRC 24 credit), its birth-year additional dependent and the at-home parent credit's qualifying child (59-10-1005) are zero on a return where the filer, or either joint spouse, can be claimed (IRC 152(b)(1)). The child tax credit and EITC already follow the federal fixes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Personal exemptions (32 V.S.A. 5811(21)(C)): no dependents on a return where the filer, or either joint spouse, can be claimed (IRC 152(b)(1)); the own and spouse exemptions already excluded a claimable filer. - Child tax credit (5830f): requires federal child tax credit entitlement for an IRC 152(c) qualifying child; the identification-number waiver does not reach 152(b)(1), so a return with a claimable filer gets none, and a young member who is not a dependent no longer counts. - Renter credit (6066): the claimant may not be claimed as a dependent, but an unclaimed spouse can be the claimant; fair market rent is for a number of bedrooms equal to the personal exemptions (6066(b)(2)). - Student loan interest (5811(21)(B)(vi), (29); IN-112 line 16): from 2022 Vermont subtracts the qualified interest paid less the federal deduction, for AGI up to $200,000 joint or $120,000 otherwise. The model subtracted the raw interest from 2021, deducting it twice for filers who took the federal deduction; a claimed filer, who gets no federal deduction (IRC 221(c)), now subtracts the whole amount. The EITC and care credit already follow the federal fixes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…dent - Personal exemptions (W. Va. Code 11-21-16): $2,000 per exemption a filer may claim (none for a claimable filer, no dependents on a return where either joint spouse can be claimed), and a single $500 when the return has none (IT-140: "If box e is zero, enter $500"). The model counted every member. - Low-income family credit (11-21-22a): family size is the number of exemptions that may be legally claimed, and a return with zero exemptions cannot claim the credit. The care credit already follows the federal fix. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Standard deduction (Wis. Stat. 71.05(22)(f)): when the filer, or either joint spouse, can be claimed, the lesser of the ordinary deduction and the greater of $1,350 or earned income plus $450 (2025; indexed as the federal amounts), on both the regular and the retirement-exclusion paths. - $250 exemption (Form 1 line 10b): only for a filer aged 65 or older who is allowed the $700 exemption, so each spouse is tested separately. - Homestead credit (71.53; Schedule H): the claimant is the spouse who is 18 or older, has earned income or is 62 or older or disabled, and is not claimed as a dependent unless 62 or older; the $500 household-income deduction counts no dependents on a return with a claimable filer. The $700 exemption and care credits already follow the federal fixes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Swap invariance, monotonicity and identities (dependent-based amounts are zero on a return with a claimable filer; a return whose every filer is claimed gets no RI relief or VT renter credit and West Virginia's single $500 exemption), plus the changelog fragment. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Utah Code 59-10-1005(2) allows $100 "for each qualifying child if ... the claimant or another claimant filing a joint individual income tax return with the claimant is an at-home parent". The model multiplied the credit by the number of spouses earning $3,000 or less, doubling it for such couples; the existing two-parent test asserted $400 for two children and now expects $200. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
32 V.S.A. 5830f(b) reduces "the amount of the credit per child" by $20 for each $1,000 of AGI over $125,000; the model reduced the total once, so a family with two young children at $150,000 got $1,500 instead of $1,000. The existing phase-out and age cases used the filer as the child; they now have a parent and a child, since 5830f counts IRC 152(c) qualifying children. 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>
…nt exemption reform When in effect, the contributed reform recounts is_tax_unit_dependent itself; it now applies the same IRC 152(b)(1) gate as the baseline ut_total_dependents, as the federal branch did for the HI, WI and Treasury reforms. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Child and dependent care: childcare expenses do not count on a return with a claimable filer unless a child under 13 still qualifies (IRC 21(b)(2)(A)(ii)). - Tuition and fees deduction: not allowed to a filer who can be claimed (IRC 222(c)(3)), so the education credit bar no longer makes such a filer eligible. - Recovery rebates: the Armed Forces exception waives the identification rule only, not the exclusion of a spouse who is another taxpayer's dependent. - Georgia: the contributed refundable credit and SB 520 reforms count the same children as ga_ctc_potential through a new ga_ctc_eligible_child. - Education credits and student loan interest read the claimed input directly, since IRC 25A(g)(3) and 221(c) turn on an actual claim. - One reference per source document; quote IRC 24(h)(4)(A) exactly. - Tests: mixed-recipient care, tuition deduction, military rebates, Georgia refund cap, and the swapped New Mexico rebate case; the property test now covers the state readers of the exemption count. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
# Conflicts: # policyengine_us/tests/policy/baseline/gov/states/oh/tax/income/exemptions/personal/oh_personal_exemptions_eligible.yaml
#10024 now separates three facts: is claimed, can be claimed, and the would-be claimant's filing exception. - IRC 152(b)(1) gates (child tax credit, credit for other dependents, under-13 care child and its expenses, dependents in exemptions_count, ARPA dependents, Ohio dependents, the Hawaii and Wisconsin reforms) read head_or_spouse_is_dependent_elsewhere_without_filing_exception, so a filer within the Publication 501 exception keeps their dependents. - Own exemptions, recovery rebates and the tuition deduction read claimability. - Education credits and student loan interest keep reading the claimed input. - Tests: the filing exception and a filer who can be claimed but is not. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
#10024's food/excise credit, Act 115 rebate and renters credit took claimable filers off exemptions_count themselves. exemptions_count now leaves them out (and, outside the filing exception, the return's dependents), so those credits read it as it is; the filing-exception cases were one exemption short. The renters credit also leaves out a dependent who can be claimed by another taxpayer (Schedule X counts only people who cannot be), as the food/excise credit already did. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Education credits: a dependent student is not eligible on a return whose filer can be claimed outside the filing exception (IRC 25A(f)(1)(A)(iii), 152(b)(1)); the filer's own eligibility still turns on an actual claim. - Recovery rebates: no credit when every filer is a dependent of another taxpayer (IRC 6428B(a)); the CARES and CAA child prerequisite is a spouse with a valid SSN, whether or not that spouse is an eligible individual. - Child and dependent care: cdcc_qualifying_childcare_expenses holds the expense rule, and the single-parent work requirement reform and California's expenses read it. - References: Georgia HB 136 page 3; one entry per recovery rebate statute; quote IRC 24(h)(4)(A) exactly in the test comment. - Tests: dependent students, the two rebate cases, the reform and California expenses, and the Hawaii, Wisconsin and Treasury reforms with a claimable filer under both labellings. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Note from the US + core hub for this PR's owner (2026-10-10). #10024 now has an approved head,
A reviewer of the Two related points from the same branch:
|
- Education credits: is_barred_from_education_credits_by_dependency holds the claimed-filer and dependent-student rules; both eligibility formulas and the reconciliation SSN reform's Lifetime Learning Credit read it, so the reform no longer turns a barred student's tuition into that credit. - Child and dependent care: childcare counts when any child under 18 is still a qualifying individual, so an incapacitated child aged 13 to 17 keeps it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Setting meets_eitc_identification_requirements on one person made it an input for every person, so the other spouse lost their SSN too. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…claimable-filer-ri-sc-ut-vt-wv-wi
#10024 now separates claimability (claimable_as_dependent_on_another_return, read by head_or_spouse_is_dependent_elsewhere) from an actual claim (claimed_as_dependent_on_another_return), and the federal branch applies the Dependent Taxpayer Test (IRC 152(b)(1)) through head_or_spouse_is_dependent_elsewhere_without_filing_exception. So: - Dependent counts (RI rebate, SC exemption and under-six deduction, UT dependents, birth-year dependent, at-home parent child and contributed reform, VT dependent exemptions and CTC, WI homestead $500 deduction) use the Dependent Taxpayer Test helper, keeping dependents when the would-be claimant meets the filing exception. - Wisconsin's $250 exemption reads claimability: a filer who can be claimed is not "allowed the $700 exemption" even when no one claims them. - Vermont's renter credit bars a claimant actually claimed (6066(c)(2)). - Wisconsin's care subtraction and credit read cdcc_qualifying_childcare_expenses, so a claimable filer's childcare for a nonqualifying child drops out. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…split The Vermont student loan subtraction, the Vermont child tax credit per-child phase-out, Utah's at-home parent credit once per return and Wisconsin's homestead claimant tests change results for households where nobody is claimed, so they now go to main in #10104; this branch keeps the base formulas there. New cases: a filer who can be claimed but is not claimed (no Wisconsin $250 exemption; still a Rhode Island relief and Vermont renter credit claimant), and a would-be claimant who meets the filing exception (South Carolina, Utah, Vermont and West Virginia dependents survive). The property test now draws claimability, actual claims and the filing exception per spouse. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…sc-ut-vt-wv-wi # Conflicts: # policyengine_us/variables/gov/states/wi/tax/income/wi_retirement_income_exclusion_tax.py
|
Reply to the hub's note of 2026-10-10 (owner session), at head
Pending: local YAML and property tests, microsims (2025 and 2026) and the independent review are queued; results will go in the body. |
Keep reviewed federal and later main changes in NM, CA, VA and HI. Apply the six-state PR's Vermont renter rules over main's rounding fixes and retain both test sets. Omit already-consumed federal changelog fragments.
Project return-level dependency flags onto people in the RI rebate, UT at-home parent credit and VT child credit. Mask non-Vermont counties before state table lookups and project household state strings directly in the invariant helper. The existing five vectorized invariant tests pass.
The scalar cases mock filer claimability and dependent counts directly, so mock the Dependent Taxpayer Test helper consumed by the formula. Preserve all expected values; all 20 cases pass.
Represent the empty filer as an object and explicitly set TANF to zero in the five wage-only homestead deduction examples. Preserve expected values and main's loss add-back cases; both files pass.
Summary
Apply the RI, SC, UT, VT, WV and WI rules for a filer who can be claimed as a dependent, symmetrically between head and spouse. Preserve the settled distinction between claimability, an actual claim, and the dependent-claimant filing exception from #10024/#10087. This draft targets main. Review r3 confirmed the reviewed branch head
71b1238d026fefca0f5c208846af75a8f14202f0; main remainsf9b55fc4dd05f1bed921a4dd06cb8c81f6ceb2c7.git merge gh/mainreported “Already up to date.” No new merge resolutions were needed. No rebase was performed.The PR keeps the claimable-filer baseline in the RI/SC/UT/VT/WV contributed exemption reforms and RI/WI/WV dependent-exemption repeal overrides. It also uses payroll-adjusted wages in both Wisconsin deduction paths and replaces Vermont's one-bedroom floor with verified zero-bedroom HUD data for 2021–2025.
Four separate fixes remain in #10104: Vermont student-loan interest, Vermont CTC per-child phase-out, Utah's at-home credit parent multiplier, and Wisconsin's homestead claimant conditions.
ri_property_tax_credit_eligibleri_child_tax_rebate(2021 return)sc_dependent_exemption,sc_young_child_deduction, SC reformut_total_dependents,ut_personal_exemption_additional_dependent_eligible, contributedut_dependent_exemption_reformut_at_home_parent_credit_potentialvt_personal_exemptions, VT reformvt_ctcvt_renter_creditexemptions_countwv_personal_exemption, WV reform/repealexemptions_countwv_low_income_family_tax_credit_eligible,_fpgexemptions_countwi_standard_deduction,wi_retirement_income_exclusion_taxwi_additional_exemptionwi_homestead_incomewi_childcare_expense_subtraction(2021),wi_childcare_expense_credit_potentialcdcc_qualifying_childcare_expenses, so a claimable filer's childcare for a nonqualifying child drops outAudit rows already fixed by #10024 or #10087 (not changed here)
exemptions_count), EITC (federaleitc), care credit (federalcdcc).count_cdcc_eligible,cdcc_relevant_expenses).ctc_qualifying_child), EITC; homeowner/renter relief was already symmetric.capped_cdcc,pre_obbba_capped_cdcc).cdcc).exemptions_count); care credit counts (count_cdcc_eligible,capped_count_cdcc_eligible).Review r2: responses
Review r3: responses
head_spouse_countfails two cases, including the new mixed joint return; the mutation was reverted before the final run.review_findingdispatch blocks to rulespec-us #1807–#1812 usinggh issue edit, following #1403/#1416. Verified exact server readbacks, unchangedpe-paritylabels and preserved companion cases. No issue or PR comments were posted.Fail-before and pass-after
Full files before → after: repeal 5 failed / 15 passed → 20 passed; RI reform 8 failed / 12 passed → 20 passed. The WV own-count mutation fails 2 / 17 cases; restored code passes 17 / 17.
The unclaimed-but-claimable repeal controls reproduced the same $700 WI/$5,100 RI errors. RI older-dependent and filing-exception controls also failed before the fix. Final individual-file results appear below.
Look-only findings: HI and VA repeal
2025 single filer, age 22, claimable but unclaimed, no dependents:
hi_regular_exemptionsva_personal_exemption_personEach state ran in its own YAML process at reviewed head
71b1238d026fefca0f5c208846af75a8f14202f0and clean mainf9b55fc4dd05f1bed921a4dd06cb8c81f6ceb2c7. Both reproduce the same pre-existing override defect. No HI or VA formula was changed. Proposed separate follow-up: Preserve claimable-filer exclusions in Hawaii and Virginia dependent-exemption repeal overrides. Retain each state's baseline own/aged-exemption gate while repealing dependents; add 2025 claimable-single controls and joint/aged coverage. The hub can raise and dispatch that work.Final r3 validation
Final head:
15a794021e969bc6751d3eb7ecc8a97a09a4a637.Total: 345 passed across 27 files (340 YAML cases and five property tests).
All files ran individually, one foreground process at a time, using the assigned shared interpreter and
PYTHONPATHfor this checkout. Every test set OMP/OpenBLAS/MKL/vecLib/NumExpr caps to 4 andOMP_WAIT_POLICY=PASSIVE. No full suite or microsimulation was run.make format, Ruff format/check on the PR's changed Python files, andgit diff --checkpassed. The existing property module still has five cases and no new Python model constructions were added. CI was skipped at the reviewed draft head; the PR remains a draft.Readings for Max
Not modeled (listed, not implemented)
Other findings (not fixed here)
vt_renter_creditnever checks that the unit paid rent or prorates by months rented (6066(b)(1)(E)); any low-income Vermont unit gets the full-year credit.ut_total_dependentscounts every dependent of the return; 59-10-1018(1)(c) counts only those for whom an IRC 24 credit is allowed (for example, not a dependent without a taxpayer identification number).Invariants and test scope
The property test checks head/spouse swaps, claimability monotonicity and the statutory identities (including zero dependent-based amounts and WV $500), using Hypothesis and seeded populations for 2021, 2023, 2025 and 2026. Pension/IRA inputs now reach both generated populations. It does not compare nobody-claimable outputs with a base checkout. YAML controls establish the unchanged scenarios; the disclosed VT CTC correction excludes a young member who is not a dependent even when nobody is claimable.
Validation from review r2
Final head:
71b1238d026fefca0f5c208846af75a8f14202f0.Total: 311 passed across 26 files (306 YAML cases and five property tests).
Before r2 refers to the reviewed formulas at
0891442052d6106142275e48436675f15b908a1a, using the added regressions. Controls that already passed were retained. Vermont helper assertions expose the disallowed dependent count before the amount assertion. The original property generator also passed all five cases.Additional clean-main comparison: copied the eight coverage files into
f9b55fc4dd05f1bed921a4dd06cb8c81f6ceb2c7, without changing base formulas.Every policy file ran individually in a foreground process with OMP/OpenBLAS/MKL/vecLib/NumExpr capped at 4 and OMP_WAIT_POLICY=PASSIVE. No folder suite, parallel heavy process, or microsimulation was run; the hub owns microsimulation impact.
make format(Ruff format/check) andgit diff --checkpassed. Local property-generator runtime/peak memory measurements are recorded below; these are macOS measurements, not Linux CI estimates. Existing Python case count and model-construction count stay unchanged; CI placement remains the existing Core/Python group.Local macOS property measurement, including setup: original generator 44.12s, original peak RSS 2.008 GiB; expanded pension/IRA generator 55.68s, expanded peak RSS 2.026 GiB. Both generators ran on the same repaired model using child-process
getrusage; these measurements include host load and are not Linux CI estimates.Existing CI context was inspected without triggering a run: successful fallback run 39190151231 on another branch measured Core group wall 43:01.45 and 9.875 GiB peak RSS. The latest #10044 run was skipped and had no artifacts; the fallback has no per-file timing for this new property module. The generator expansion adds positive retirement inputs to existing populations and catches label/monotonicity errors there; the exact $194.25 policy case lives in YAML. The property module keeps five pytest cases and the existing model-construction/routing counts in Rest Python Core (shard 2). No new runners or parallel processes were added.
Merge context
The prior merge with main retained main's reviewed federal content and later fixes in the NM/CA/VA/HI paths, and combined Vermont's exemption/actual-claim changes with main's precision and half-up rounding fixes. This r2 response introduces no additional merge conflict or resolution and never rebases the draft branch.
axiom: TheAxiomFoundation/rulespec-us#1807 queued (RI: 44-33-3, 44-30-103) | TheAxiomFoundation/rulespec-us#1808 queued (SC: 12-6-1140(13), 12-6-1160) | TheAxiomFoundation/rulespec-us#1809 queued (UT: 59-10-1018, 59-10-1005 lawful dependents) | TheAxiomFoundation/rulespec-us#1810 queued (VT: 5811(21)(C), 5830f, 6066 claimant/FMR) | TheAxiomFoundation/rulespec-us#1811 queued (WV: 11-21-16, 11-21-22a) | TheAxiomFoundation/rulespec-us#1812 queued (WI: 71.05(22)(f), age-65 $250, lawful care/homestead counts)
🤖 Generated with Claude Code