From 93109b62e9bd3ac067a68997ac39461a5ba7ba51 Mon Sep 17 00:00:00 2001 From: David Trimmer Date: Mon, 9 Nov 2026 13:49:18 -0500 Subject: [PATCH 1/2] Count military retired pay in New Mexico and Oklahoma credit income tests MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit New Mexico's modified gross income (NMSA 1978 § 7-2-2(L)(9), (11)) and Oklahoma's gross household income (OAC 710:50-15-96(c); Form 538-S line 6) count pensions and annuities whether or not they are taxed, but both lists counted only pension_income, which leaves out military retired pay. Add military_retirement_income, which also carries military survivor annuities, with a test for each. Co-Authored-By: Claude Opus 5.5 (1M context) Claude-Session: https://claude.ai/code/session_01LqCGPgxDukji8Bhs57c5rH --- changelog.d/veteran-retired-pay-fixes.fixed.md | 1 + .../states/nm/tax/income/modified_gross_income.yaml | 5 +++++ .../ok/tax/income/credits/gross_income_sources.yaml | 4 ++++ .../nm/tax/income/nm_modified_gross_income.yaml | 13 +++++++++++++ .../gov/states/ok/tax/income/ok_gross_income.yaml | 12 ++++++++++++ 5 files changed, 35 insertions(+) create mode 100644 changelog.d/veteran-retired-pay-fixes.fixed.md diff --git a/changelog.d/veteran-retired-pay-fixes.fixed.md b/changelog.d/veteran-retired-pay-fixes.fixed.md new file mode 100644 index 00000000000..2419a7ed89d --- /dev/null +++ b/changelog.d/veteran-retired-pay-fixes.fixed.md @@ -0,0 +1 @@ +Count military retired pay and survivor annuities in New Mexico's modified gross income and Oklahoma's credit gross income. diff --git a/policyengine_us/parameters/gov/states/nm/tax/income/modified_gross_income.yaml b/policyengine_us/parameters/gov/states/nm/tax/income/modified_gross_income.yaml index caac7071fad..e24b2f19680 100644 --- a/policyengine_us/parameters/gov/states/nm/tax/income/modified_gross_income.yaml +++ b/policyengine_us/parameters/gov/states/nm/tax/income/modified_gross_income.yaml @@ -11,6 +11,9 @@ values: - child_support_received - rental_income - pension_income + # NMSA 1978 § 7-2-2(L)(9), (11): annuities and pensions, including military + # retired pay and survivor annuities, which pension_income leaves out. + - military_retirement_income - retirement_distributions - total_unemployment_compensation - irs_employment_income @@ -27,5 +30,7 @@ metadata: reference: - title: New Mexico Income Tax Act, Chapter 7 - Taxation, 7-2-2. Definitions, L href: https://nmonesource.com/nmos/nmsa/en/item/4340/index.do#!fragment/zoupio-_Toc140503656/BQCwhgziBcwMYgK4DsDWszIQewE4BUBTADwBdoAvbRABwEtsBaAfX2zgEYAWABgFYeAZgBsfYQEoANMmylCEAIqJCuAJ7QA5BskRCYXAiUr1WnXoMgAynlIAhdQCUAogBknANQCCAOQDCTyVIwACNoUnZxcSA + - title: 2025 PIT-RC instructions, modified gross income (an annuity, pension, retirement pay) + href: https://taxsim.nber.org/historical_state_tax_forms/NM/2025/NM_PIT_RC_INST.PDF#page=10 - title: 2025 PIT-RC instructions, line 11 (income from an estate or trust) href: https://taxsim.nber.org/historical_state_tax_forms/NM/2025/NM_PIT_RC_INST.PDF#page=4 diff --git a/policyengine_us/parameters/gov/states/ok/tax/income/credits/gross_income_sources.yaml b/policyengine_us/parameters/gov/states/ok/tax/income/credits/gross_income_sources.yaml index 54eb8257ffc..9f2cb3140d1 100644 --- a/policyengine_us/parameters/gov/states/ok/tax/income/credits/gross_income_sources.yaml +++ b/policyengine_us/parameters/gov/states/ok/tax/income/credits/gross_income_sources.yaml @@ -16,6 +16,10 @@ values: - estate_income - dividend_income - pension_income + # OAC 710:50-15-96(c) and Form 538-S line 6: pensions and annuities, taxable + # or not, including military retired pay and survivor annuities, which + # pension_income leaves out. + - military_retirement_income - debt_relief - total_unemployment_compensation - workers_compensation diff --git a/policyengine_us/tests/policy/baseline/gov/states/nm/tax/income/nm_modified_gross_income.yaml b/policyengine_us/tests/policy/baseline/gov/states/nm/tax/income/nm_modified_gross_income.yaml index 06c92d3744d..a7defcd52e8 100644 --- a/policyengine_us/tests/policy/baseline/gov/states/nm/tax/income/nm_modified_gross_income.yaml +++ b/policyengine_us/tests/policy/baseline/gov/states/nm/tax/income/nm_modified_gross_income.yaml @@ -110,3 +110,16 @@ output: # § 7-2-2(L): "undiminished by losses". max(-5,000, 0) = 0, so 20,000. nm_modified_gross_income: 20_000 + +- name: NM modified gross income includes military retired pay and survivor annuities + period: 2025 + input: + state_code: NM + irs_employment_income: 20_000 + military_retirement_pay: 30_000 + military_retirement_pay_survivors: 6_000 + output: + # § 7-2-2(L)(9), (11): annuities and pensions, so military retired pay and + # a survivor annuity count: + # 20,000 + 30,000 + 6,000. + nm_modified_gross_income: 56_000 diff --git a/policyengine_us/tests/policy/baseline/gov/states/ok/tax/income/ok_gross_income.yaml b/policyengine_us/tests/policy/baseline/gov/states/ok/tax/income/ok_gross_income.yaml index ac934f30090..0f9688eafa4 100644 --- a/policyengine_us/tests/policy/baseline/gov/states/ok/tax/income/ok_gross_income.yaml +++ b/policyengine_us/tests/policy/baseline/gov/states/ok/tax/income/ok_gross_income.yaml @@ -70,3 +70,15 @@ ok_ssp: 480 ok_gross_income: 12_408 ok_ptc: 0 + +- name: OK gross income counts military retired pay and survivor annuities + period: 2025 + input: + irs_employment_income: 10_000 + military_retirement_pay: 15_000 + military_retirement_pay_survivors: 2_000 + state_code: OK + output: + # Form 538-S Part 3 counts taxable and nontaxable income, line 6 other + # pensions and annuities: 10,000 + 15,000 + 2,000. + ok_gross_income: 27_000 From d26d228f8f17b11a8f7bc5104708b3af3f7486ad Mon Sep 17 00:00:00 2001 From: David Trimmer Date: Tue, 10 Nov 2026 10:21:22 -0500 Subject: [PATCH 2/2] Fix the NM and OK reference pages and pin the military retiree credit losses - New Mexico: replace the two PIT-RC entries with one citing page 2 ("an annuity, pension, retirement pay") and page 4 (lines 5 and 11); page 10 is the medical care and child income tax credits. - Oklahoma: point Form 538-S Part 3 at page 50, which has line 6 and the "taxable and nontaxable gross income" heading, through page 51. - Add a 2025 case for a couple, both 67, with $45,000 of military retired pay and $30,000 of Social Security: New Mexico modified gross income and Oklahoma gross income are $75,000, so the NM low income comprehensive tax rebate (149 without the pay) and the OK sales tax relief credit (80 without it) are 0. Co-Authored-By: Claude Opus 5.5 (1M context) Claude-Session: https://claude.ai/code/session_01LqCGPgxDukji8Bhs57c5rH --- .../nm/tax/income/modified_gross_income.yaml | 6 ++-- .../income/credits/gross_income_sources.yaml | 4 +-- ...m_low_income_comprehensive_tax_rebate.yaml | 32 +++++++++++++++++++ .../gov/states/ok/tax/income/ok_stc.yaml | 30 +++++++++++++++++ 4 files changed, 66 insertions(+), 6 deletions(-) diff --git a/policyengine_us/parameters/gov/states/nm/tax/income/modified_gross_income.yaml b/policyengine_us/parameters/gov/states/nm/tax/income/modified_gross_income.yaml index e24b2f19680..077eb144f5d 100644 --- a/policyengine_us/parameters/gov/states/nm/tax/income/modified_gross_income.yaml +++ b/policyengine_us/parameters/gov/states/nm/tax/income/modified_gross_income.yaml @@ -30,7 +30,5 @@ metadata: reference: - title: New Mexico Income Tax Act, Chapter 7 - Taxation, 7-2-2. Definitions, L href: https://nmonesource.com/nmos/nmsa/en/item/4340/index.do#!fragment/zoupio-_Toc140503656/BQCwhgziBcwMYgK4DsDWszIQewE4BUBTADwBdoAvbRABwEtsBaAfX2zgEYAWABgFYeAZgBsfYQEoANMmylCEAIqJCuAJ7QA5BskRCYXAiUr1WnXoMgAynlIAhdQCUAogBknANQCCAOQDCTyVIwACNoUnZxcSA - - title: 2025 PIT-RC instructions, modified gross income (an annuity, pension, retirement pay) - href: https://taxsim.nber.org/historical_state_tax_forms/NM/2025/NM_PIT_RC_INST.PDF#page=10 - - title: 2025 PIT-RC instructions, line 11 (income from an estate or trust) - href: https://taxsim.nber.org/historical_state_tax_forms/NM/2025/NM_PIT_RC_INST.PDF#page=4 + - title: "2025 PIT-RC instructions, modified gross income (an annuity, pension, retirement pay; line 5 pensions and annuities; line 11 estate or trust) #page 2,4" + href: https://taxsim.nber.org/historical_state_tax_forms/NM/2025/NM_PIT_RC_INST.PDF#page=2 diff --git a/policyengine_us/parameters/gov/states/ok/tax/income/credits/gross_income_sources.yaml b/policyengine_us/parameters/gov/states/ok/tax/income/credits/gross_income_sources.yaml index 9f2cb3140d1..7b62a0dbb94 100644 --- a/policyengine_us/parameters/gov/states/ok/tax/income/credits/gross_income_sources.yaml +++ b/policyengine_us/parameters/gov/states/ok/tax/income/credits/gross_income_sources.yaml @@ -44,8 +44,8 @@ metadata: href: https://oklahoma.gov/content/dam/ok/en/tax/documents/forms/individuals/past-year/2023/511-Pkt.pdf - title: 2024 Form 511 instructions href: https://oklahoma.gov/content/dam/ok/en/tax/documents/forms/individuals/past-year/2024/511-Pkt-2024.pdf - - title: 2025 Form 511 packet, Form 538-S, Part 3 (gross income lines 9 to 14) - href: https://oklahoma.gov/content/dam/ok/en/tax/documents/forms/individuals/current/511-Pkt.pdf#page=51 + - title: "2025 Form 511 packet, Form 538-S, Part 3 (taxable and nontaxable gross income, lines 1 to 14; line 6 other pensions and annuities) #page 50-51" + href: https://oklahoma.gov/content/dam/ok/en/tax/documents/forms/individuals/current/511-Pkt.pdf#page=50 - title: 2025 Form 538-H, lines 10 (public assistance) and 11 (gross positive income from rentals, royalties, partnerships, estates and trusts) href: https://oklahoma.gov/content/dam/ok/en/tax/documents/forms/individuals/current/538-H.pdf#page=1 - title: Okla. Admin. Code 710:50-15-96(c) (gross household income is the gross income of every type) diff --git a/policyengine_us/tests/policy/baseline/gov/states/nm/tax/income/rebates/low_income_comprehensive/nm_low_income_comprehensive_tax_rebate.yaml b/policyengine_us/tests/policy/baseline/gov/states/nm/tax/income/rebates/low_income_comprehensive/nm_low_income_comprehensive_tax_rebate.yaml index 84ae85e14bf..5a9341de984 100644 --- a/policyengine_us/tests/policy/baseline/gov/states/nm/tax/income/rebates/low_income_comprehensive/nm_low_income_comprehensive_tax_rebate.yaml +++ b/policyengine_us/tests/policy/baseline/gov/states/nm/tax/income/rebates/low_income_comprehensive/nm_low_income_comprehensive_tax_rebate.yaml @@ -355,3 +355,35 @@ state_code: NM output: nm_low_income_comprehensive_tax_rebate: 212 + +- name: Military retired pay puts a couple, both 67, over the rebate's income limit. + period: 2025 + input: + people: + head: + age: 67 + is_tax_unit_head: true + military_retirement_pay: 45_000 + social_security_retirement: 15_000 + spouse: + age: 67 + is_tax_unit_spouse: true + social_security_retirement: 15_000 + tax_units: + tax_unit: + members: [head, spouse] + filing_status: JOINT + households: + household: + members: [head, spouse] + state_code: NM + output: + # NMSA 1978 § 7-2-2(L)(9), (11): modified gross income counts military + # retired pay. 45,000 + 30,000 Social Security = 75,000. + nm_modified_gross_income: 75_000 + # Two federal exemptions plus two for each spouse 65 or older. + nm_low_income_comprehensive_tax_rebate_exemptions: 6 + # 75,000 is above the six-exemption table's $36,000 limit. Without the + # military retired pay, modified gross income would be 30,000 and the + # rebate 149. + nm_low_income_comprehensive_tax_rebate: 0 diff --git a/policyengine_us/tests/policy/baseline/gov/states/ok/tax/income/ok_stc.yaml b/policyengine_us/tests/policy/baseline/gov/states/ok/tax/income/ok_stc.yaml index 9fdae1540a5..7828399c602 100644 --- a/policyengine_us/tests/policy/baseline/gov/states/ok/tax/income/ok_stc.yaml +++ b/policyengine_us/tests/policy/baseline/gov/states/ok/tax/income/ok_stc.yaml @@ -219,3 +219,33 @@ # elderly $50,000 limit and restoring the $40-per-person credit. ok_gross_income: 38_565.84 ok_stc: 80 + +- name: OK STC - 2025 - military retired pay puts a couple, both 67, over the limit + period: 2025 + input: + people: + head: + age: 67 + is_tax_unit_head: true + military_retirement_pay: 45_000 + social_security_retirement: 15_000 + spouse: + age: 67 + is_tax_unit_spouse: true + social_security_retirement: 15_000 + tax_units: + tax_unit: + members: [head, spouse] + filing_status: JOINT + households: + household: + members: [head, spouse] + state_code: OK + output: + # OAC 710:50-15-96(c) and Form 538-S line 6 count military retired pay, + # taxable or not. 45,000 + 30,000 Social Security = 75,000. + ok_gross_income: 75_000 + # 75,000 is above the $50,000 limit for filers 65 or older. Without the + # military retired pay, gross income would be 30,000 and the credit + # 2 x 40 = 80. + ok_stc: 0