Repository navigation
Conversation
30 Del. C. 1106(b)(3)c-e raise the military pension exclusion cap to $15,000 for 2027, $20,000 for 2028 and $25,000 from 2029, and from 2027 give filers 60 or older the greater of the $12,500 pension exclusion and their military pension up to that cap. PolicyEngine-US held the cap at $12,500 and gave 60+ filers only the pension exclusion. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Senate Amendment 1 to SB 219 (85 Del. Laws c. 426) added 30 Del. C. 1106(b)(3)f.4: a person 60 or older takes the (b)(3) subtraction only after 3 years of Delaware domicile, or 5 years for a person domiciled in Delaware from 2027. A new person input, de_pension_exclusion_domicile_requirement_met, defaults to true, and a switch applies the rule from tax year 2027, as the act's fiscal note assumes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
David, I'd like your call on the three Delaware readings in the PR body, above all the first. SB 219 took effect when the Governor signed it and names no first tax year for the domicile test, so the PR applies the test from 2027, as the fiscal note assumes. It also follows the text in denying a filer who fails the test the whole (b)(3) subtraction, and, as main does, it counts military survivor benefits toward the general pension exclusion. If you can look by Tuesday afternoon, we can merge it before the Veterans Day post (PolicyEngine/policyengine-app-v2#1523). |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #10716 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 1 2 +1
Lines 37 42 +5
Branches 0 3 +3
=========================================
+ Hits 37 42 +5
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
PR Review: Apply Delaware's 2027-2029 military pension caps and the 60+ choiceSummaryI read the enacted bill first: SB 219 as amended by Senate Amendment 1 (85 Del. Laws c. 426, signed and effective 8/17/26), its fiscal note, and 30 Del. C. § 1106(b)(3) as the online Code now prints it. The core change is right. The military caps are $15,000 for 2027, $20,000 for 2028 and $25,000 from 2029. Filers 60 and older get "the greater of" the $12,500 pension exclusion and the capped military pension from 2027. Both work person by person and need no circular calculation. The f.4 domicile test removes the whole (b)(3) subtraction for a 60+ filer who fails it, from 2027. 2026 and earlier results are unchanged from main, which matches the Veterans Day post's 2026 figures ($12,500 under 60 and $12,500 at 60+). I checked 25 expectations by hand and with a small probe at the head, including all five tax figures in the PR body. Three things are open:
My calls on the three readings the author asked about:
Critical (must fix)None. Should address1. Axiom line has no status word. What issue #2078 does well:
What's missing:
Fix: change the line to 2. Survivor annuities: the PR keeps the instructions' narrower reading over the statute's definition, and doesn't record it ( The statute. 30 Del. C. § 1106(b)(3)f.2, unchanged by SB 219, defines the term this way:
The article is indefinite: "an individual's service", not "the taxpayer's service". A Survivor Benefit Plan annuity is a pension received as a result of the deceased member's service. Delaware's own instructions treat survivor pensions as pensions: Line 6 covers "pensions from employers (including pensions of a deceased taxpayer)" (2025 PIT-RES instructions, page 6). The Division's reading. The same page narrows the military branch to a filer who "retired from the United States military and received pension income". But its checkbox asks only whether "your pension is from the United States military". The legislature's reading. The SB 219 fiscal note puts survivors in the base for this act (assumption 4): "there were 8,921 retired military and 1,337 survivors receiving a military pension in Delaware" (fiscal note, page 1). Project rule. Under the 2026-10-20 ruling (CLAUDE.md "Conflicting sources"; CONTRIBUTING.md#source-conflicts), the statute governs over the instructions. The canons say "definitions control" and "the operative words govern over form shortcuts". What the head computes (probe), and the statute's result:
The first and third rows come from this PR's new 60+ branch. The under-60 gap dates from #10182 (October 2026), when the survivor input was added. The PR extends it to 2027-2029 with a new test. Fix, in my view: follow the statute. In the military branch, read
The #10317 readers guard doesn't constrain tax-side files, so either input is allowed. The same definition has governed (b) since at least the 2024 amendment. So the fix changes survivors' 2024-2026 results too, which is a correction, not a regression. If the team instead keeps main's reading, record it as a candidate in 3. Duplicate reference entry in The online Code now prints c-e (checked today), so the existing href corroborates the new values. Fix: delete the new entry, and retitle the existing one, for example "30 Del. C. § 1106(b)(3)b-e". Suggestions
Verified correct
Axiom line assessment
CI statusAt head Branch statusThe branch is 2 commits ahead of main and 40 behind (merge base Verdict: REQUEST_CHANGES |
DTrim99
left a comment
There was a problem hiding this comment.
Requesting changes per the review above: 0 critical, 3 should (axiom line needs a status word and #2078 a recorded blocker; survivor annuities fall under f.2's 'received as a result of an individual's service' but the PR keeps the instructions' retiree-only reading unrecorded; duplicate reference entry), 2 suggestions. The caps, the 60+ choice and 2026 results check out.
What was wrong
PolicyEngine-US held Delaware's military pension exclusion at $12,500 in every year from 2022, and gave filers 60 and older only the $12,500 pension exclusion. Senate Bill 219 (85 Del. Laws c. 426, signed August 17, 2026) raises the military pension cap for 2027, 2028 and 2029. From 2027 it also lets filers 60 and older take the military pension exclusion when it is larger, and adds a domicile requirement for them.
The law
30 Del. C. § 1106(b)(3), as SB 219 and its Senate Amendment 1 left it, subtracts:
Senate Amendment 1 added two rules to the definitions in f:
Change
cap/military.yaml: $15,000 from 2027, $20,000 from 2028 and $25,000 from 2029.military_retirement_exclusion_available_at_age_threshold.yaml(false through 2026, true from 2027): when true,de_pension_exclusiongives filers at or above the age threshold the greater of their capped pension exclusion and their capped military pension, as it already did for younger filers.domicile_requirement_applies.yaml(true from 2027) and a new person input,de_pension_exclusion_domicile_requirement_met, which defaults to true. When a filer at or above the age threshold fails the requirement,de_pension_exclusiongives them nothing. PolicyEngine has no data on how long people have lived in Delaware, so population results assume everyone meets it.de_pension_exclusionalready works person by person.The age-threshold switch matters even where the caps make the greater-of look automatic. A 60+ filer's pension basket can net capital losses, so it can fall below the military pension: with $10,000 of military pay and a $3,000 capital loss, the basket is $7,000. Before 2027 the statute gives that filer $7,000. From 2027 it gives $10,000.
Readings to check
de_pension_exclusionhas kept military survivor benefits (military_retirement_pay_survivors) out of the military pension branch. They share the $2,000 or $12,500 pension exclusion instead, and an existing 2024 test encodes that. f.2 defines a United States military pension as "a pension received as a result of an individual's service" in the uniformed services, which could reach a survivor's annuity. This PR keeps main's reading and extends its test to 2029.Invariants
For every input, with
capthe year's military pension cap:Tests
de_pension_exclusion.yamladds 20 cases:tests/core/test_de_military_pension_exclusion_properties.pyuses Hypothesis to draw batches of single filers, varying age, military pay, survivor benefits, other pensions, IRA distributions, interest, capital gains or losses, and the domicile input. It checks the invariants above against a reference that restates the statute, for every year from 2022 to 2031. Setting the age-threshold switch to false for 2027 makes it fail; setting the domicile switch to false for 2027 fails three of the new YAML cases.All 516 cases under
tests/policy/baseline/gov/states/depass.Before and after
Delaware income tax for a single filer with $30,000 of military retired pay and no other income:
For 2027 at 45: $30,000 − $15,000 leaves $15,000 of Delaware AGI and $11,750 of taxable income after the $3,250 standard deduction. The brackets give $66 + $195 + $84 = $345, less the $110 personal credit.
axiom: TheAxiomFoundation/rulespec-us#2078
🤖 Generated with Claude Code