Skip to content

Apply Iowa, Kansas, Louisiana and Maryland rules for a filer who can be claimed as a dependent - #10045

Draft
MaxGhenis wants to merge 32 commits into
mainfrom
claimable-filer-ia-ks-ky-la-md
Draft

MaxGhenis wants to merge 32 commits into
mainfrom
claimable-filer-ia-ks-ky-la-md

Conversation

@MaxGhenis

@MaxGhenis MaxGhenis commented Oct 10, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Iowa, Kansas, Louisiana and Maryland each have rules for a filer who can be claimed as a dependent on another return that the model never applied. A return on which the filer (or, if joint, either spouse) can be claimed has no dependents unless the would-be claimant meets the filing exception (IRC 152(b)(1); Publication 501: "you and your spouse can't claim any dependents on your joint return"), and these states also have their own rules for the claimable or claimed filer. This PR applies the ones the federal fixes do not already cover. Each rule is symmetric between head and spouse and reads the fact its law names, using #10024's split inputs:

  • IRC 152(b)(1) "no dependents" rules read head_or_spouse_is_dependent_elsewhere_without_filing_exception, as the federal formulas do.
  • Rules whose text says "claimed" read the claim (claimed_as_dependent_on_another_return).
  • Maryland's filing status 6 ("Any person who can be claimed") reads claimability.

It also fixes one related error in the same formulas (last row of the table). Kentucky claimable-filer coverage follows the federal fixes, but the inherited 2026 care-credit reader has a separate conformity limitation described below; this PR does not fix that statewide issue.

Stacked on the federal claimable-filer PR #10087 (claimable-filer-federal, merged in at 35a2cbc) and on #10024. The 2026-10-09 audit (Subfleet research, sweep_s2) was written before those changes. The rows they already fix are listed below, with the YAML cases that now pin them.

Formula Rule now (fact read) Source
ia_exemption_credit No $40 dependent credits on a return with a claimable filer, outside the filing exception; each filer keeps the personal credit Iowa Code 422.12(1)(a), (2)(a)(3): "Dependent" has its Internal Revenue Code meaning; 2025 IA 1040 instructions: "You may claim a $40 personal exemption credit even if you are claimed as a dependent", and the dependents "you are claiming for federal income tax purposes"
ia_is_tax_exempt (+ new parameters tax_exempt/dependent/income_limit, income_sources) A claimed single filer is exempt only with income below $5,000 (line 26 net income through 2022; line 4 Iowa taxable income, without add-backs, from 2023). Any other return with a claimed filer (joint, head of household, surviving spouse, married filing separately) is not exempt 2021-2025 instructions (2021, 2022, 2023, 2024, 2025): "less than $5,000 and you are claimed as a dependent"; other statuses: "You are not claimed as a dependent on another person's Iowa return"
ia_reduced_tax No tax reduction for a claimed single filer Tax Reduction Worksheet: "Single taxpayers, who are not claimed as a dependent on another person's Iowa tax return" (2025 p.18)
ks_count_exemptions (2021-2023) Zero when either filer is claimed; otherwise dependents only outside a claimable filer (152(b)(1)) K-40 instructions 2021-2023, p.6: "If you are claimed as a dependent by another taxpayer, enter '0' in the Total Kansas exemptions box"
ks_exemptions (2024+) The filing-status allowance stays; no $2,320 dependent exemptions on a return with a claimable filer, outside the filing exception K.S.A. 79-32,121b: "for each dependent for which such taxpayer is entitled to a deduction ... for federal income tax purposes"; 2024 K-40 p.6: "enter '0' in the number of dependents box"; KDOR FAQ: a claimable taxpayer "will qualify for the personal exemption allowance of $9,160"
ks_fstc (2021-2024) Exemptions as on K-40 Line E: zero for a claimed filer through 2023, the filing-status count in 2024; no dependent or dependent-child route on a return with a claimable filer, outside the filing exception K-40 Line E: "Enter your total number of exemptions"; the child must be claimed "as a personal exemption"
la_dependents_exemption (2021-2024) No dependent exemption on a return with a claimable filer, outside the filing exception; own exemptions unchanged IT-540 instructions: Line 6C "dependents claimed on your federal return"; Line 6A "even if someone else claimed you"
md_personal_exemptions_count (new), md_total_personal_exemptions An exemption for each filer who is not claimable, plus dependents only outside a claimable filer (152(b)(1), with the exception); counted locally, not from federal exemptions_count Tax-General 10-211(a)-(b); 2025 Resident Booklet p.12, filing status 6: "You do not get an exemption for yourself ... You and your spouse must file separate returns"; Instruction 8 (p.13): "Each spouse must claim their own personal exemption" and may split "the overall number of dependents"
md_aged_dependent_exemption None on a return with a claimable filer, outside the filing exception 10-211(b)(2): "each dependent, as defined in § 152" who is 65 or older
federal_eitc_without_age_minimum The childless route also needs no claimable filer outside the filing exception, as in eitc_demographic_eligible 10-704: only "the minimum age requirement" is waived; booklet p.22: "otherwise eligible for the federal credit"; IRC 32(c)(1)(A)(ii)(III); Publication 596
md_ctc, md_ctc_eligible No qualified child on a return with a claimable filer, outside the filing exception 10-751(a)(2)(i): "a dependent for purposes of § 152"
is_eligible_md_poverty_line_credit, md_poverty_line_credit_potential, md_local_poverty_line_credit (+ new md_poverty_line_credit_earned_income, md_poverty_line_credit_income_level) No credit when every filer is claimable (filing status 6, whatever the filing exception). On a joint return with one claimable spouse, it uses the other spouse's own earned income and the poverty level for that spouse's exemptions 10-709(a)(2): the poverty level "that corresponds to the number of exemptions which the individual is allowed and claims under § 10-211(b)(1)"; (a)(3)(iii); booklet p.23: "not eligible ... if you checked filing status 6"
md_aged_dependent_exemption (related fix) Limited by federal AGI like every other (b)(1)-(2) exemption: $1,600/$800/$0 above $100,000 ($150,000 joint) 10-211(c): "the amount allowed for each exemption under subsection (b)(1) or (2)"; booklet chart: "This reduction applies to the additional dependency exemptions as well"

The Iowa, Kansas and Maryland dependent-exemption contrib reforms and the state dependent exemption repeal keep these rules (YAML cases added). In repeal_state_dependent_exemptions.py this PR changes only the Maryland and Kansas entries and lands first in that file's order: this PR, then #10043, then #10053.

Audit rows already fixed by #10024 or the federal branch (not changed here)

  • IA: EITC (federal eitc) and care credit (cdcc_potential). Pinned in ia_eitc.yaml and ia_cdcc.yaml.
  • KS: EITC (eitc) and care credit (cdcc). Pinned in ks_total_eitc.yaml and ks_cdcc.yaml.
  • KY: care credit and tuition credit.
    • The care credit reads cdcc, and the inherited 2026 reader uses pre_obbba_cdcc. Both use the federal qualifying-expense dependency gates, pinned in ky_cdcc_potential.yaml. This establishes claimable-filer coverage only. The frozen 2026 reader is obsolete under KRS 141.010(21), PDF p.3 and 2026 chapter 161 §6, PDF p.9, which advance conformity to December 31, 2025. KRS 141.067 retains the 20% federal match. The statewide conformity correction is deferred to a separate PR.
    • The tuition credit reads the federal AOC/LLC, barred when either filer is claimed.
    • The family size credit already keeps qualifying children under 152(c) ("even if you are claimed as a dependent").
  • LA: EITC (eitc), refundable and nonrefundable care credits (cdcc_potential, cdcc), and through them the school readiness credit. Pinned in la_eitc.yaml and la_refundable_cdcc.yaml.
  • MD: care credit (cdcc), dependent care subtraction (count_cdcc_eligible, cdcc_relevant_expenses) and local EITC (eitc). The subtraction is pinned in md_dependent_care_subtraction.yaml.

These dependency-reader statements describe the formulas on this branch, subject to the Kentucky 2026 conformity limitation above. No tax formula in these five states reads raw childcare expenses; the raw-expense readers are the CCAP and TANF benefit programs.

Maryland's separate returns: how far this models them

Maryland requires a married filer who can be claimed to file separate Maryland returns (filing status 6 for that spouse). The model keeps the federal joint tax unit and applies each rule per filer where the rule is per filer:

  • Exemptions: each filer who cannot be claimed gets their own; the spouses split the federal return's dependents, of which it has none outside the filing exception.
  • Poverty line credit: computed on the other spouse's earnings and poverty level.
  • EITC and CTC: no childless EITC and no qualified child.

It does not compute two separate Maryland returns. These still use the joint unit:

  • filing status;
  • the standard deduction;
  • the Schedule I rates;
  • each spouse's own AGI for the exemption phase-down;
  • the poverty line credit's tax limit (its AGI test expressly uses joint federal AGI after a joint federal return, even when Maryland returns are separate);
  • the EITC split ("a combined total of up to one-half the federal credit").

A married person can be claimed only if the couple's joint return is "filed only to claim a refund of withheld income tax or estimated tax paid" (Publication 501), so these are low-income couples. From 2025 the two separate flat standard deductions sum to the joint one ($3,350 x 2 = $6,700), but the separate rate schedules can still give a different tax. Computing the two returns needs each spouse's income as on a separate federal return (Instruction 8), a split the Maryland model does not have.

Review r1 (Sol, at 704a604): responses

  1. Should-fix: Maryland exemptions followed a federal-only reform. Fixed. Maryland counts its own exemptions in md_personal_exemptions_count, with the same rule as the federal count, and both md_total_personal_exemptions and md_poverty_line_credit_income_level read it. The federal repeal_dependent_exemptions reform no longer reaches Maryland.
  2. Should-fix: the changelog left out the aged dependent AGI limit. Fixed; the fragment names it.
  3. Nit: invariant 5 was untested, and max_examples was 2. The property test now checks the nobody-claimable identities: the Maryland count equals tax_unit_size, the poverty earned income equals eitc_earned_income, the poverty level equals tax_unit_fpg, and The tested la_dependents_exemption amount is $1,000 per dependent. max_examples is now 3, and a filing-exception scope test is added. The pending hub microsimulation will check the remaining outputs.
  4. Nit: Iowa wording and anchors. The body now names every non-single status. The 2021 anchor is page 38 in the code too. 422.13(1)(a) is labelled as the filing requirement it is.
  5. Nit: no Louisiana 2023 reference. Added.
  6. Nit: duplicated earned income sources. The round-1 change retained a comment pointing to eitc_earned_income. Round 2 corrects the wage input to irs_employment_income, matching the current federal definition after pretax payroll contributions; retaining a cross-reference alone had not kept the two definitions aligned. The Maryland calculation still needs per-person sources to allocate income between spouses.

Response to the independent review

Historical round-1 follow-up record; the round-2 responses and validation appear at the end of this body. The supplied round-1 review examined 704a604a29; the assigned head 228b34ad938e9773c1a76bf02ffd0f9e75f948be already contains the six implementation/documentation responses above. This follow-up independently rereads the cited primary passages and adds the missing reform regression, rather than repeating those fixes.

  1. Fixed — Maryland federal-reform coupling: retain the local md_personal_exemptions_count in both consumers; add registered federal-repeal cases proving that four Maryland exemptions remain $12,800 and that the filing-exception poverty level remains $21,150 under both spouse labellings.
  2. Fixed — aged-dependent changelog: verified the existing fragment explicitly names the federal-AGI limit in Tax-General 10-211(c), and the aged-dependent tests exercise the phase-down.
  3. Fixed — invariant 5: verified its explicit assertions and nonempty deterministic no-claim population; the existing property test now uses three Hypothesis examples and includes filing-exception scope. The new reform cases also protect the nobody-claimable Maryland result without relying on a microsimulation.
  4. Fixed — Iowa wording and anchors: rechecked 2021 PDF page 38 and Code 422.13(1)(a) PDF page 46; retain the accurate filing-requirement label, and align the remaining formula comment and parameter description with all non-single statuses and actual claiming.
  5. Fixed — Louisiana 2023 reference: rechecked the already-added IT-540 instructions PDF page 3, lines 6A and 6C. The readings below also correct the attribution of “qualified dependent” to the instructions.
  6. Round-1 response superseded — earned-income source duplication: the earlier check accepted a cross-reference comment but missed the federal wage-source change. Round 2 uses irs_employment_income, net of pretax payroll contributions, alongside the other current federal earned-income sources. A shared tax-unit result cannot supply the per-person allocation required here.

Partial validation results from the direct foreground file runs are appended below. No microsimulation is run in this follow-up.

Readings for Max (for the US + core hub to batch)

These preserve the PR's existing choices. Items 3 and 6 identify missing inputs/return representation rather than discretion to ignore an explicit legal requirement. Amounts below illustrate the rule at issue, before unrelated tax limits unless stated.

  1. Kansas 2021–2023 exemptions. Keep the K-40 actual-claim rule: either claimed spouse makes the total count zero (2022 K-40 instructions, PDF p.6). The alternative reads 2023 K.S.A. 79-32,121(a) and IRC 151(d)(2) per person, based on claimability. Worked 2023 joint return, one claimed spouse, other spouse unclaimable, no dependents: PR $0; alternative 1 × $2,250 = $2,250. A claimable but unclaimed single filer receives $2,250 under the PR versus $0 under the alternative.

  2. Kansas food sales tax credit, 2021–2024. Keep K-40 Line E's count, including the 2024 filing-status allowance (2024 instructions, “Exemptions and Dependents” and “Lines E through H”). The alternative follows federal exemptions in K.S.A. 79-32,271(d). Worked otherwise-eligible 2024 joint return with one claimable spouse and no dependents: PR 2 × $125 = $250; alternative 1 × $125 = $125. An otherwise-eligible claimable single filer has $125 versus $0, before the general tax-liability cap. The 2021–2023 instructions already exclude the extra head-of-household exemption (2022 booklet, PDF p.5): an eligible 2022 head of household with one qualifying child has 2 × $125 = $250, not 3 × $125 = $375. The inherited disabled-veteran omission is listed under Not modeled.

  3. Iowa low-income exemption: external claimant income and Iowa return. Keep the instructions-based simplification because the model lacks the claimant's income and return jurisdiction. Iowa Code 422.5(2)(a), PDF p.7 conditions the dependent exclusion on the claimant exceeding the income limit; the 2022 instructions, PDF p.37 use the $5,000 dependent test and an Iowa-return claim. Worked 2022 claimed single filer with $6,000 net income and a single claimant with $8,000 net income: PR not exempt ($6,000 ≥ $5,000); claimant-income alternative exempt (both incomes below the ordinary $9,000 limit), so tax after the exemption is $0. A non-Iowa claimant creates the analogous jurisdiction-input choice.

  4. Iowa alternate tax. Keep the alternate tax for a joint return with a claimed spouse: the 2024 alternate worksheet repeats no dependent bar. The alternative applies the whole-subsection dependent exclusion in 2024 Code 422.5(2)(a)–(b), PDF p.7. Worked 2024 joint return, one claimed spouse, modified income $20,000, ordinary tax $500, external claimant income $30,000: PR min($500, ($20,000 − $13,500) × 5.7%) = $370.50; alternative $500.

  5. Maryland dependents on separate returns. Keep Instruction 8's overall dependent pool as the federal joint return's, which has no dependents when either filer is claimable outside the claimant filing exception (2025 booklet, PDF p.13; Publication 501, PDF p.11). The alternative computes a pro forma separate federal dependent pool for the unclaimable spouse. Worked 2025 couple with one claimable spouse, an otherwise qualifying child age 4 and AGI $2,000: PR $3,200 basic exemptions and $0 CTC; alternative $6,400 and $500 CTC, under 10-211(a)(3), (b) and 10-751(a)(2)(i).

  6. Maryland separate returns — model limitation. Keep the existing per-filer rules on one federal joint unit; a full two-return computation remains outside this PR. Filing status 6 and Instruction 8, PDF pp.12–13 explicitly require separate Maryland returns. Worked 2025, no children, claimable spouse earnings $10,000, other spouse earnings $5,000, no adjustments: current aggregate taxable income $15,000 − $6,700 − $3,200 = $5,100; separate taxable incomes total max(0, $10,000 − $3,350) + max(0, $5,000 − $3,350 − $3,200) = $6,650. The poverty-credit AGI test still expressly uses joint federal AGI for separate Maryland filers following a joint federal return (booklet, PDF p.23).

  7. Louisiana school readiness credit, incapable child. Keep the inherited Louisiana care-credit route: IRC 21(b)(1)(B) disregards 152(b)(1) for an incapable qualifying person; R.S. 47:297.4(A) imports that credit and 47:6104(A) multiplies it by facility rating. The alternative imposes a separate legal-dependent gate from the 2023 instructions, PDF p.16, which use “qualified dependent” (the phrase is not in 47:6104 itself). Worked 2023 claimable filer, incapable child age 4, $1,000 qualifying care, $10,000 AGI/earnings, five-star facility: PR federal credit $350, Louisiana care credit $175, school readiness $175 × 200% = $350; alternative school readiness $0.

  8. Maryland filing exception and the dependent-taxpayer chart. Keep the PR's statutory reading: 10-211(a)(3), (b)(1) allows an actual IRC 152 dependent even when the filer's own exemption is denied, if the claimant filing exception preserves that dependent. An alternative reads Chart 10A's dependent-taxpayer “Each Exemption” $0 column as denying all exemptions on that taxpayer's return (2025 booklet, PDF p.12). Worked low-AGI 2025 single claimable filer, claimant filing exception true, one otherwise qualifying child: PR 1 × $3,200 = $3,200; broad chart reading $0. The existing filing-exception YAML cases pin the retained reading.

  9. Kansas 2024+ actual claims versus federal dependent entitlement. Keep the statutory federal-entitlement reading in K.S.A. 79-32,121b(a)(3), which preserves an otherwise eligible dependent under the claimant filing exception. The alternative follows the 2024 K-40 instructions, PDF p.6, requiring a taxpayer actually claimed on another return to enter zero dependents. Worked 2024 single filer, actually claimed, claimant filing exception true, one eligible child: PR $9,160 + $2,320 = $11,480; instruction-based alternative $9,160. This reading concerns 2024+ baseline exemptions; the round-2 contrib fix follows the actual-claim zero-total rule for 2021–2023.

  10. Maryland poverty credit: actual claim versus claimability. Keep the filing-status-6 claimability rule in the 2025 booklet, PDF pp.12 and 23. The alternative follows the actual-claim exclusion in Tax-General 10-709(a)(3)(iii). Worked claimable-but-unclaimed filer with $10,000 earned income, holding the other income/credit conditions satisfied: PR excludes the filer and gives $0; the actual-claim alternative passes that exclusion and gives an uncapped state amount of 5% × $10,000 = $500, subject to remaining state tax. For a complete low-income fact pattern the exemption-count, earned-income allocation and EITC/tax limits must also be applied; this comparison isolates the actual-claim gate rather than asserting a $500 final credit.

  11. Maryland poverty threshold: allowed exemptions versus persons on the federal return. Keep the allowed-and-claimed exemption count in Tax-General 10-709(a)(2). The alternative follows the federal-return person count in the 2025 poverty-credit worksheet, PDF p.23. Worked 2025 joint federal return with one claimable spouse, one unclaimable spouse and no children: PR counts 1 allowed exemption and uses $15,650; person-count alternative counts 2 and uses $21,150. At $18,000 of relevant AGI/earnings, the PR income test fails while the person-count alternative passes. The code keeps the statutory count.

Not modeled (listed, not implemented)

  • IA: early childhood development credit and tuition/textbook credit (per dependent, 422.12(2)(b), 422.12C(2)); rent reimbursement program ("not ... claimed as a dependent").
  • KS: 2025+ additional newborn allowance and stillbirth exemption; the homestead refund's dependent-child route; the inherited omission of disabled-veteran exemptions from the food-credit Line E count (2024 instructions, PDF p.6). An otherwise eligible single disabled veteran has $125 in the current model versus 2 × $125 = $250 under the retained Line E reading, before the tax-liability cap. This PR does not implement the extra veteran exemption.
  • LA: school tuition, homeschool and public-school expense deductions (claimed dependents, current or preceding year).
  • MD: 2021 RELIEF Act payment (excluded "Persons claimed as a dependent").

Other findings (not fixed here)

Invariants

  1. Swap invariance. Every changed output, and each of the five states' income taxes, is the same under either head/spouse labelling.

  2. Monotonicity. Marking another filer as claimed never raises:

    • the dependent-based amounts;
    • the Kansas exemptions and food sales tax credit;
    • the Maryland exemption count and amount, CTC, pro forma EITC and poverty-credit earned income.

    Left out by design:

    • Taxes and the Iowa exemption: a claimed single filer's $5,000 test uses a different income measure, so it can newly exempt.
    • Maryland's poverty line credit amounts: they rise when lost exemptions raise the tax they offset.

    The poverty earned income holds only for non-negative self-employment income. On separate returns a claimable spouse's loss no longer offsets the other's earnings, which is intended.

  3. Identities. With a filer claimable outside the filing exception: no Louisiana dependent exemption, no Maryland aged dependent exemption or CTC, and no pro forma EITC without a child. With every filer claimable: no poverty line credit.

  4. Differential. Wherever the federal EITC's eligibility holds, Maryland's federal_eitc_without_age_minimum equals the federal credit before take-up and filing.

  5. Unchanged when nobody can be claimed. The Maryland count equals tax_unit_size. The poverty earned income and poverty level equal eitc_earned_income and tax_unit_fpg. The tested la_dependents_exemption amount is $1,000 per dependent. The pending hub microsimulation will check the remaining outputs; the only exception is the aged dependent AGI fix.

  6. Filing-exception scope. The exception never lowers the 152(b)(1) amounts. It does not change Iowa's exemption (an actual-claim rule) or Maryland's poverty earned income (a claimability rule).

Tests

  • YAML. Variable-named cases cover every changed formula and the inherited state readers above:

    • a single claimable filer, with an unclaimed single control where it differs;
    • a joint return with one claimable spouse, under both head/spouse labellings;
    • a joint return with both spouses claimable;
    • a joint return with nobody claimable;
    • claimable-but-unclaimed cases for the actual-claim rules;
    • filing-exception cases for the 152(b)(1) rules.

    Expected values are computed from the law and the repository parameters, with the arithmetic in each case's comments. The round-2 results are in Review r2: responses below. Earlier partial-verification results are preserved as historical records and are not presented as current-head validation.

  • Property test. policyengine_us/tests/core/test_claimable_filer_ia_ks_ky_la_md_invariants.py checks invariants 1-6 with Hypothesis (claimable, claimed and filing-exception draws), a seeded population in the five states for 2022, 2024 and 2026, and an exception-scope population for 2022 and 2025. Round 2 also permits claimed & exception in the generator. Cost in the existing Rest Python core CI group: Both before and after the round-2 generator change, a passing run builds 11 simulations and passes 6 cases. Local macOS timings: before 59.13 s pytest / 202.01 s whole command; after 45.14 s pytest / 97.86 s whole command. Whole-command measurements include process/model startup. These local observations do not establish a performance improvement or the marginal cost on Linux CI. Local peak memory was not measured. The existing successful Linux main run 39163337809 at fab18b7d6ba2eaef0d3eda3f419448d15711eb6e measured the entire core group at 45:29.90 wall / 10.026 GiB peak RSS / 1,727 tests (zero failures, errors or skips). That main report does not contain this PR's property module. The assigned-head draft-PR run 39161769976 skipped the tests and has no timing/memory artifacts, so no PR-head or marginal Linux CI measurement is available. Current results are in the round-2 section; the earlier 6-case pass below is historical.

Microsimulation impact

Pending: default dataset, 2025 and 2026, claimable-filer-federal (35a2cbc) vs this branch. The dataset sets the dependency flags for nobody, so only the Maryland aged dependent AGI limit can move totals.

axiom: TheAxiomFoundation/rulespec-us#1799 queued (IA: dependent credits, bounded low-income exemption/tax reduction, EITC/CDCC) | TheAxiomFoundation/rulespec-us#1800 queued (KS: 2024-2025 lawful dependent allowance, EITC/CDCC) | K.S.A. 79-32,271 n/a: expired after 2024 and unencoded | Louisiana 2021-2024 dependent exemption n/a: expired and unencoded | TheAxiomFoundation/rulespec-us#1801 queued (MD: exemptions/aged AGI limits, CTC, sourced EITC/poverty/care composition) | TheAxiomFoundation/rulespec-us#1802 queued (KY: 2024 care and tuition composition) | TheAxiomFoundation/rulespec-us#1793 queued (KY: 2026 care conformity) | TheAxiomFoundation/rulespec-us#1803 queued (LA: EITC, ordinary care/school readiness) | TheAxiomFoundation/rulespec-us#1621 queued (federal: childless EITC dependency gate/claimant exception) | TheAxiomFoundation/rulespec-us#1684 queued (federal: lawful dependency stack) | contrib reforms n/a: PE-only reform.

Merge with main after #10087

Merged main (6989afda4698d6c643f5dd0ef7ad19aff9f769b8) after #10087 squash-merged. Resolved nm_medical_expense_credit.py, its YAML test, and ca_cdcc_relevant_expenses.yaml with main verbatim because this PR did not change them against its federal base. For ks_cdcc.yaml, retained main's unrelated 2021 increased federal dependent-care exclusion regression and appended this PR's six 2024 claimable/nonclaimable cases unchanged. Removed two inherited federal/#10024 changelog fragments already consumed by releases on main.

The resulting 51-file diff preserves this PR's original changes against 35a2cbcbb9. Only the context around the Kansas test additions differs, because main's new regression case is retained before those additions; no inherited federal changes remain.

Verification refresh (2026-10-16): main advanced to 1ef55c1197c6b466912e2f081d548d277e04e360 with the North Carolina and Nevada supplementation changes and their release updates. Merged that main into the pushed 18240a3755 as 228b34ad938e9773c1a76bf02ffd0f9e75f948be, without conflicts or history rewriting. Those upstream changes touch none of this PR's 51 paths. The direct diff against the refreshed main still has exactly those 51 paths and identical added/deleted lines to 35a2cbcbb9..5459eee8f8; only the Kansas unchanged context differs. All 26 changed test files are unchanged by this refresh.

Historical verification at 228b34ad938e9773c1a76bf02ffd0f9e75f948be only (not validation of the current follow-up head): all 26 changed test files passed (288 cases). Reused the 24 completed files / 267 passes recorded at 18240a3755; reran the Kansas (9 passes) and Maryland (12 passes) dependent-exemption contrib files at 228b34ad938e9773c1a76bf02ffd0f9e75f948be, one foreground process per file with all requested thread caps. Ruff 0.15.5 format --check and check pass on all 23 changed Python files; make format also passes with all 6,993 Python files unchanged. No conflict markers or whitespace errors remain. The PR remains a draft.

Independent review partial verification (2026-10-16 21:44 UTC)

Historical record at 594045e742dce9567926b96e8e852a4ebb70260c, superseded for current-head validation by Review r2: responses below.

RESULT: BLOCKED. The required current-checkout rerun remains unfinished: 12/27 changed files completed successfully, 122 actual passed cases; 15 file runs not completed. The prescribed foreground rerun could not finish within the six-hour job limit; the active test process was stopped and joined before the deadline. This is an incomplete validation result, not an assertion that every changed file passes.

HEAD: 594045e742dce9567926b96e8e852a4ebb70260c. Current main 95ac9bd01ce349bd388f3fd77c15f40bcb31d165 was merged without history rewriting after confirming the assigned PR head 228b34ad938e9773c1a76bf02ffd0f9e75f948be. The PR remains a draft. The historical 288-pass paragraph above describes the old assigned head only; those old runs are not included in the current totals below.

Primary passages were independently reread; the existing policy readings are retained and the original eight alternatives with citations and worked numbers remain in Readings for Max above; round 2 adds readings 9–11. Finding dispositions:

  1. Fixed — Maryland federal-only reform coupling: retain the local state exemption count in both consumers and add the three registered federal-repeal regressions.
  2. Fixed — aged dependent AGI changelog: verify the existing explicit Tax-General 10-211(c) entry and retain its phase-down cases; the table below states whether this job completed that file's rerun.
  3. Fixed — invariant 5: verify explicit nobody-claimable assertions and nonempty seeded coverage; retain three Hypothesis examples and filing-exception scope, with the actual current property result stated below.
  4. Fixed — Iowa wording and anchors: verify 2021 instructions PDF page 38 and the Code 422.13 filing-requirement source; align descriptions with actual claiming and all non-single statuses.
  5. Fixed — Louisiana 2023 reference: verify IT-540 PDF page 3, lines 6A and 6C; retain the citation and clarify the school-readiness wording's source in the readings above.
  6. Historical conclusion superseded in r2 — duplicated earned-income sources: the cross-reference comment was retained, but round 2 identified the missed irs_employment_income wage-source update and corrects it.

Fail before: temporarily replayed only the two consumer formulas from reviewed commit 704a604a29, then restored the current formulas in a finally block. The new exemption case calculated $6,400 instead of $12,800. Both poverty-threshold spouse-label cases calculated $15,650 instead of $21,150. All three failures were calculation failures, not import or collection failures.

Pass after: the three new regressions pass in completed direct file runs: the seven-case Maryland total-personal-exemption file and both new poverty-threshold cases. All 12 successful current file runs / 122 passed cases below used the prescribed interpreter and direct single-file CLI (or python -m pytest -q for the Python file), one foreground process at a time, PYTHONPATH set to this checkout, all requested numerical thread caps set to four, and OMP_WAIT_POLICY=PASSIVE. No preload/fork alternative was used. No folder runs, full suites, or microsimulations were run in this follow-up.

Ruff 0.15.5 format and check and make format passed, as recorded in the evidence logs. These formatting results and the three new regression passes do not substitute for the remaining required file runs.

Only full successful records supported by their actual pass logs contribute to the completed count. Expected cases in uncompleted files are planning counts, not passes, and do not contribute to the total.

Test file (under policyengine_us/tests/) Current-checkout status Actual completed passes Expected cases if not completed
core/test_claimable_filer_ia_ks_ky_la_md_invariants.py Completed successfully 6 —
policy/baseline/gov/states/md/tax/income/exemptions/md_aged_dependent_exemption.yaml Completed successfully 10 —
policy/baseline/gov/states/md/tax/income/credits/poverty_line/md_poverty_line_credit_earned_income.yaml Completed successfully 19 —
policy/baseline/gov/states/md/tax/income/exemptions/md_personal_exemptions_count.yaml Completed successfully 8 —
policy/baseline/gov/states/la/tax/income/exemptions/personal/la_dependents_exemption.yaml Not completed — 10
policy/baseline/gov/states/ia/tax/income/ia_cdcc.yaml Completed successfully 17 —
policy/baseline/gov/states/ia/tax/income/ia_eitc.yaml Completed successfully 7 —
policy/baseline/gov/states/ia/tax/income/ia_exemption_credit.yaml Completed successfully 10 —
policy/baseline/gov/states/ia/tax/income/ia_income_tax_before_refundable_credits.yaml Completed successfully 11 —
policy/baseline/gov/states/ia/tax/income/ia_is_tax_exempt.yaml Completed successfully 17 —
policy/baseline/gov/states/ks/tax/income/exemptions/ks_count_exemptions.yaml Completed successfully 8 —
policy/baseline/gov/states/ks/tax/income/exemptions/ks_exemptions.yaml Not completed — 10
policy/baseline/gov/states/ks/tax/income/ks_cdcc.yaml Not completed — 9
policy/baseline/gov/states/ks/tax/income/ks_fstc.yaml Not completed — 21
policy/baseline/gov/states/ks/tax/income/ks_total_eitc.yaml Not completed — 7
policy/baseline/gov/states/ky/tax/income/credits/dependent_care_service/ky_cdcc_potential.yaml Not completed — 6
policy/baseline/gov/states/la/tax/income/credits/cdcc/la_refundable_cdcc.yaml Not completed — 9
policy/baseline/gov/states/la/tax/income/credits/la_eitc.yaml Not completed — 8
policy/baseline/gov/states/md/tax/income/agi/md_dependent_care_subtraction.yaml Not completed — 6
policy/baseline/gov/states/md/tax/income/credits/ctc/md_ctc.yaml Not completed — 30
policy/baseline/gov/states/md/tax/income/credits/eitc/federal_eitc_without_age_minimum.yaml Not completed — 13
policy/baseline/gov/states/md/tax/income/credits/poverty_line/md_poverty_line_credit_income_level.yaml Completed successfully 2 —
policy/baseline/gov/states/md/tax/income/exemptions/md_total_personal_exemptions.yaml Completed successfully 7 —
policy/contrib/state_dependent_exemptions/repeal_state_dependent_exemptions.yaml Not completed — 11
policy/contrib/states/ia/dependent_credit_reform_test.yaml Not completed — 8
policy/contrib/states/ks/dependent_exemption_reform_test.yaml Not completed — 9
policy/contrib/states/md/dependent_exemption_reform_test.yaml Not completed — 12

The property/invariant file completed with 6 actual passed cases.

Historical next step at that head: complete every file marked not completed using the same direct one-file foreground process and thread caps. The round-2 validation record below identifies what was rerun for the new changes.

Review r2: responses

RESULT: FIXED. HEAD: e0eaf477c973b6133f5b878de0228bf385991b83. All 27 required file runs completed successfully with 301 passed cases.

Review: review-r2.md at 5e4bd89dda4609ffe66922f8a6155d0b684553e8. The PR remains a draft. The previous body is saved as untracked evidence in hub-evidence/10045-body-before-r2.md; all existing sections and axiom: lines are retained, with earlier verification clearly scoped to its historical head.

Confirmed the assigned branch head 5e4bd89dda4609ffe66922f8a6155d0b684553e8, fetched main 83e03a92f6e7934b0a4af86d6425c5d272af409a, and merged it without conflicts as e72137ed074ed6d64f5c6d6bed3ee33359150bcb. No history was rewritten.

Finding Response
1. Maryland earned income Use irs_employment_income, matching federal eitc_earned_income after pretax payroll contributions, as required by Tax-General 10-709's IRC 32(c)(2) reference. Correct the source comment and the stale round-1 claims above. Add 2025 mixed-spouse cases: $16,000 gross wages − $2,000 pretax contributions = $14,000, below $15,650, so both state and local earnings tests pass.
2. Kansas contrib reform Apply the actual-claim restriction beside the dependent-taxpayer restriction in the reform's eligible-dependent count; permit claimed & exception property draws. For a 2022 actually claimed single filer with the claimant filing exception and one eligible child, reform amounts $0 and $4,000 both produce $0 total exemptions, replacing −$2,250 and $1,750, respectively.
3. Kentucky conformity Remove the unsupported claim that the frozen reader establishes no Kentucky code change is needed. Disclose the pre-existing 2026 conformity issue and its $40 versus $70 example. Defer the statewide code change to a separate PR under KRS 141.010(21), 2026 chapter 161 §6 and KRS 141.067.
4. Missing readings Add readings 9–11, each with the retained choice, alternative, worked numbers and primary sources. Retain the existing Kansas 2024+ and Maryland code choices.
5. Kansas food-credit narrative Correct the head-of-household description: the 2021–2023 instructions already exclude its extra exemption. List the inherited disabled-veteran Line E omission under Not modeled, including $125 versus $250.
6. Swapped joint cases Add swapped head/spouse counterparts for all four asymmetric 60/30-age joint cases in ks_fstc.yaml, including both-claimed and neither-claimed cases in 2022 and 2024.
7. Iowa citation Add # PDF pages 39-40 to the Iowa Code reference in ia_exemption_credit.py, keeping the page-39 anchor.
8. Property-test cost Document the simulation count and measured runtime in Tests, identify the existing Rest Python core CI group, and distinguish local timings from the existing Linux CI group report; local peak memory was not measured.

Fail before / pass after: The following failures are policy calculation mismatches, not import or collection failures. The new formula regressions fail before the corresponding fixes and pass after them; the extra coverage for existing behavior passes in the initial control runs as expected. These control runs exercised unchanged food-credit and baseline-exemption formulas; they are not a replay of the entire old tree.

File/cases Fail-before or initial control run After the round-2 fixes
Maryland md_poverty_line_credit_earned_income.yaml, two pretax-contribution cases under both spouse labels 2 failed, 19 passed. Each new case returned $16,000 earned income instead of $14,000. 21 passed, 47.84 s pytest / 224.25 s whole command. Each new case gives $14,000 AGI and earned income, $15,650 threshold, eligibility true, $700 state potential credit and $448 local credit.
Kansas contrib dependent_exemption_reform_test.yaml, claimed filer with claimant filing exception and one child 2 failed, 10 passed. Reform amount $0 gave −$2,250; reform amount $4,000 gave $1,750, both instead of zero. 12 passed, 107.73 s pytest / 265.59 s whole command. Both 2022 cases now give $0. The separate 2024 federal-entitlement reform control remains $13,160.
Kansas ks_fstc.yaml, four new swapped-label counterparts All 25 cases passed, including the four new swaps, in the initial control run with the food-credit formula unchanged; these cases extend the requested symmetry coverage. 25 passed, including all four swapped counterparts; full timing is in the file-results table below.
Kansas baseline ks_exemptions.yaml, 2024 claimed-filer filing-exception control All 11 cases passed, including the new $11,480 control, in the initial control run with the baseline-exemption formula unchanged; this pins the retained statutory reading. 11 passed, including the $11,480 control; full timing is in the file-results table below.

The Maryland and Kansas before/after runs use the same new policy cases. Whole-command timings include startup; local measurements are distinct from Linux CI reports.

Current round-2 file results: 27/27 files passed, 301 cases. Paths below are relative to policyengine_us/tests/; these are completed local foreground runs, with setup included in whole-command time.

Test file Passed Pytest seconds Whole-command seconds
core/test_claimable_filer_ia_ks_ky_la_md_invariants.py 6 45.14 97.86
policy/baseline/gov/states/ia/tax/income/ia_cdcc.yaml 17 16.45 108.19
policy/baseline/gov/states/ia/tax/income/ia_eitc.yaml 7 9.89 77.23
policy/baseline/gov/states/ia/tax/income/ia_exemption_credit.yaml 10 9.67 97.02
policy/baseline/gov/states/ia/tax/income/ia_income_tax_before_refundable_credits.yaml 11 11.27 60.46
policy/baseline/gov/states/ia/tax/income/ia_is_tax_exempt.yaml 17 11.21 67.64
policy/baseline/gov/states/ks/tax/income/exemptions/ks_count_exemptions.yaml 8 9.90 67.91
policy/baseline/gov/states/ks/tax/income/exemptions/ks_exemptions.yaml 11 13.39 435.53
policy/baseline/gov/states/ks/tax/income/ks_cdcc.yaml 9 14.03 99.18
policy/baseline/gov/states/ks/tax/income/ks_fstc.yaml 25 10.01 114.61
policy/baseline/gov/states/ks/tax/income/ks_total_eitc.yaml 7 12.21 106.61
policy/baseline/gov/states/ky/tax/income/credits/dependent_care_service/ky_cdcc_potential.yaml 6 13.62 128.28
policy/baseline/gov/states/la/tax/income/credits/cdcc/la_refundable_cdcc.yaml 9 11.02 136.38
policy/baseline/gov/states/la/tax/income/credits/la_eitc.yaml 8 12.75 104.01
policy/baseline/gov/states/la/tax/income/exemptions/personal/la_dependents_exemption.yaml 10 15.32 146.44
policy/baseline/gov/states/md/tax/income/agi/md_dependent_care_subtraction.yaml 6 16.25 217.83
policy/baseline/gov/states/md/tax/income/credits/ctc/md_ctc.yaml 30 10.59 97.92
policy/baseline/gov/states/md/tax/income/credits/eitc/federal_eitc_without_age_minimum.yaml 13 11.32 95.29
policy/baseline/gov/states/md/tax/income/credits/poverty_line/md_poverty_line_credit_earned_income.yaml 21 47.84 224.25
policy/baseline/gov/states/md/tax/income/credits/poverty_line/md_poverty_line_credit_income_level.yaml 2 25.29 109.69
policy/baseline/gov/states/md/tax/income/exemptions/md_aged_dependent_exemption.yaml 10 9.89 108.19
policy/baseline/gov/states/md/tax/income/exemptions/md_personal_exemptions_count.yaml 8 14.25 137.11
policy/baseline/gov/states/md/tax/income/exemptions/md_total_personal_exemptions.yaml 7 28.70 181.10
policy/contrib/state_dependent_exemptions/repeal_state_dependent_exemptions.yaml 11 39.04 135.94
policy/contrib/states/ia/dependent_credit_reform_test.yaml 8 71.16 186.63
policy/contrib/states/ks/dependent_exemption_reform_test.yaml 12 107.73 265.59
policy/contrib/states/md/dependent_exemption_reform_test.yaml 12 51.79 155.62

All round-2 tests run one file per foreground process with the prescribed interpreter, checkout PYTHONPATH, numerical thread caps of four and OMP_WAIT_POLICY=PASSIVE. No folder runs, full suites, microsimulations or background runners were used. Current round-2 static checks passed: make format with Ruff 0.15.0 left 7,312 files unchanged and passed Ruff check; git diff --check passed.

Separate PR proposed: Update Kentucky's 2026 dependent-care credit for enacted IRC conformity.
Advance the Kentucky care-credit reader to the December 31, 2025 IRC under KRS 141.010(21) and 2026 chapter 161 §6; retain KRS 141.067's 20% match.
Add the $50,000-AGI/$1,000-care regression ($70, not $40) and cover the 2026 rate/eligibility transitions for Kentucky filers generally.

🤖 Generated with Claude Code

MaxGhenis and others added 19 commits October 8, 2026 11:03
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>
…endent

A return on which the filer (or, if joint, either spouse) can be claimed as a
dependent has no dependents (IRC 152(b)(1)), and these states never applied
that or their own rules for such a filer. Now:
- Iowa: no $40 dependent credits (the personal credits stay, "even if you are
  claimed"); a claimed single filer is exempt from tax only with income below
  $5,000, a joint return with a claimed spouse is not exempt, and the single
  tax reduction worksheet excludes a claimed filer.
- Kansas: a claimed filer has no exemptions in 2021-2023 ("enter '0' in the
  Total Kansas exemptions box"); from 2024 the filing-status allowance stays
  and dependents are zero; the food sales tax credit counts exemptions the
  same way and has no child route.
- Louisiana: no dependent exemption (2021-2024).
- Maryland: no own exemption for a filer who can be claimed (filing status 6)
  and no dependent or aged-dependent exemptions; no child tax credit; no
  childless EITC on the pro forma federal credit without the minimum age; the
  poverty line credit is barred for a claimable filer and, on a joint return,
  kept for the other spouse on that spouse's earnings with the poverty level
  for the exemptions that spouse may claim (10-709(a)(2)).
The Iowa, Kansas and Maryland dependent-exemption contrib reforms and the
state dependent exemption repeal keep these rules.

Kentucky needs no change: its care and tuition credits read the federal
credits the base branch already corrects; YAML cases pin that.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Tax-General 10-211(c) limits "the amount allowed for each exemption under
subsection (b)(1) or (2)" once federal AGI exceeds $100,000 ($150,000 joint,
head of household or surviving spouse), and the Resident Booklet's chart says
"This reduction applies to the additional dependency exemptions as well". The
aged dependent exemption ((b)(2)) was a flat $3,200 at any income; it now
takes the same per-exemption amount as the personal exemption.

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>
- 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>
MaxGhenis and others added 3 commits October 11, 2026 12:03
#10024 now separates claimability (`claimable_as_dependent_on_another_return`)
from an actual claim (`claimed_as_dependent_on_another_return`) and adds the
claimant filing exception. Each rule now reads the fact its law names:
- IRC 152(b)(1) "no dependents" rules (Iowa dependent credit, Kansas
  dependents and food sales tax credit child, Louisiana dependent exemption,
  Maryland dependents, aged dependents and CTC, and the childless pro forma
  EITC) read `head_or_spouse_is_dependent_elsewhere_without_filing_exception`,
  as the federal formulas do.
- Rules whose text says "claimed" read the claim: Iowa's low-income
  exemption and tax reduction ("not claimed as a dependent on another
  person's Iowa return") and Kansas's 2021-2023 zero exemptions ("If you are
  claimed as a dependent").
- Maryland's filing status 6 ("Any person who can be claimed") keeps reading
  claimability for the own exemption and the poverty line credit.
Maryland now counts its own exemptions in `md_personal_exemptions_count`
instead of reading federal `exemptions_count`, so a federal-only reform of
that count no longer changes Maryland's exemptions (review r1 finding 1).
The changelog names the aged dependent AGI limit (r1 finding 2).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
YAML cases for a filer who can be claimed but is not claimed (Iowa
exemption and tax reduction, Kansas 2021-2023 exemptions) and for a
claimant who meets the filing exception (Iowa dependent credit, Kansas 2024
dependent exemption, Louisiana dependent exemption, Maryland exemption
count, CTC and pro forma EITC, and the poverty line credit, which the
exception does not restore). New md_personal_exemptions_count.yaml.

The property test now draws claimable, claimed and filing-exception
patterns, checks the unchanged-when-nobody-is-claimable identities
(review r1 finding 3) and adds a filing-exception scope test.

Also: the 2021 Iowa exemption anchor is page 38, not 37; Louisiana's 2023
instructions are cited; 422.13(1)(a) is labelled as the filing requirement.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

This branch has not been deployed

No deployments
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.

1 participant