From bc15c5bea1b0912bd6372be116012724c5c032df Mon Sep 17 00:00:00 2001 From: Max Ghenis Date: Mon, 2 Mar 2026 16:58:10 -0500 Subject: [PATCH] Add US government bond interest exemption for AL, AR, CA, DC, DE Add us_govt_interest to state AGI subtractions/deductions/exemptions for Alabama, Arkansas, California, District of Columbia, and Delaware. Arizona, Colorado, Connecticut, Georgia, and Hawaii already had this exemption implemented. Add YAML test cases for all 10 states confirming the bond interest exemption is included in the appropriate subtraction variable. Co-Authored-By: Claude Opus 4.6 --- changelog.d/bond-interest-batch-1.added.md | 1 + .../gov/states/al/tax/income/agi/deductions.yaml | 2 ++ .../gov/states/ar/tax/income/exemptions/exemptions.yaml | 1 + .../gov/states/ca/tax/income/agi/subtractions.yaml | 1 + .../gov/states/dc/tax/income/subtractions/sources.yaml | 1 + .../states/de/tax/income/subtractions/subtractions.yaml | 1 + .../states/al/tax/income/al_us_govt_bond_interest.yaml | 8 ++++++++ .../states/ar/tax/income/ar_us_govt_bond_interest.yaml | 7 +++++++ .../states/az/tax/income/az_us_govt_bond_interest.yaml | 7 +++++++ .../states/ca/tax/income/ca_us_govt_bond_interest.yaml | 7 +++++++ .../states/co/tax/income/co_us_govt_bond_interest.yaml | 7 +++++++ .../states/ct/tax/income/ct_us_govt_bond_interest.yaml | 7 +++++++ .../states/dc/tax/income/dc_us_govt_bond_interest.yaml | 7 +++++++ .../states/de/tax/income/de_us_govt_bond_interest.yaml | 7 +++++++ .../states/ga/tax/income/ga_us_govt_bond_interest.yaml | 7 +++++++ .../states/hi/tax/income/hi_us_govt_bond_interest.yaml | 7 +++++++ 16 files changed, 78 insertions(+) create mode 100644 changelog.d/bond-interest-batch-1.added.md create mode 100644 policyengine_us/tests/policy/baseline/gov/states/al/tax/income/al_us_govt_bond_interest.yaml create mode 100644 policyengine_us/tests/policy/baseline/gov/states/ar/tax/income/ar_us_govt_bond_interest.yaml create mode 100644 policyengine_us/tests/policy/baseline/gov/states/az/tax/income/az_us_govt_bond_interest.yaml create mode 100644 policyengine_us/tests/policy/baseline/gov/states/ca/tax/income/ca_us_govt_bond_interest.yaml create mode 100644 policyengine_us/tests/policy/baseline/gov/states/co/tax/income/co_us_govt_bond_interest.yaml create mode 100644 policyengine_us/tests/policy/baseline/gov/states/ct/tax/income/ct_us_govt_bond_interest.yaml create mode 100644 policyengine_us/tests/policy/baseline/gov/states/dc/tax/income/dc_us_govt_bond_interest.yaml create mode 100644 policyengine_us/tests/policy/baseline/gov/states/de/tax/income/de_us_govt_bond_interest.yaml create mode 100644 policyengine_us/tests/policy/baseline/gov/states/ga/tax/income/ga_us_govt_bond_interest.yaml create mode 100644 policyengine_us/tests/policy/baseline/gov/states/hi/tax/income/hi_us_govt_bond_interest.yaml diff --git a/changelog.d/bond-interest-batch-1.added.md b/changelog.d/bond-interest-batch-1.added.md new file mode 100644 index 00000000000..ceedc8aee71 --- /dev/null +++ b/changelog.d/bond-interest-batch-1.added.md @@ -0,0 +1 @@ +Add US government bond interest exemption for AL, AR, CA, DC, DE. Add tests for all 10 states (AL, AR, AZ, CA, CO, CT, DC, DE, GA, HI). diff --git a/policyengine_us/parameters/gov/states/al/tax/income/agi/deductions.yaml b/policyengine_us/parameters/gov/states/al/tax/income/agi/deductions.yaml index 2f70c845626..efda2cf0743 100644 --- a/policyengine_us/parameters/gov/states/al/tax/income/agi/deductions.yaml +++ b/policyengine_us/parameters/gov/states/al/tax/income/agi/deductions.yaml @@ -5,11 +5,13 @@ values: - traditional_ira_contributions # Line 1 - alimony_expense # Line 4 - self_employed_health_insurance_ald # Line 7 + - us_govt_interest 2023-01-01: # IRA distributions prior to 1982 are not deductible. - traditional_ira_contributions # Line 1 - alimony_expense # Line 4 - self_employed_health_insurance_ald # Line 7 + - us_govt_interest - al_retirement_exemption #Schedule RS Line 10 metadata: diff --git a/policyengine_us/parameters/gov/states/ar/tax/income/exemptions/exemptions.yaml b/policyengine_us/parameters/gov/states/ar/tax/income/exemptions/exemptions.yaml index 49dd6418561..ef1073e3fb1 100644 --- a/policyengine_us/parameters/gov/states/ar/tax/income/exemptions/exemptions.yaml +++ b/policyengine_us/parameters/gov/states/ar/tax/income/exemptions/exemptions.yaml @@ -2,6 +2,7 @@ description: Arkansas exempts these sources from state gross income. values: 2021-01-01: - ar_capped_retirement_or_disability_benefits_exemption_person # Item 12 + - us_govt_interest_person metadata: unit: list diff --git a/policyengine_us/parameters/gov/states/ca/tax/income/agi/subtractions.yaml b/policyengine_us/parameters/gov/states/ca/tax/income/agi/subtractions.yaml index 1b9188edeac..a303c825faa 100644 --- a/policyengine_us/parameters/gov/states/ca/tax/income/agi/subtractions.yaml +++ b/policyengine_us/parameters/gov/states/ca/tax/income/agi/subtractions.yaml @@ -3,6 +3,7 @@ values: 2021-01-01: - taxable_social_security - taxable_unemployment_compensation + - us_govt_interest metadata: reference: diff --git a/policyengine_us/parameters/gov/states/dc/tax/income/subtractions/sources.yaml b/policyengine_us/parameters/gov/states/dc/tax/income/subtractions/sources.yaml index d70cd5937c6..5395562d7ea 100644 --- a/policyengine_us/parameters/gov/states/dc/tax/income/subtractions/sources.yaml +++ b/policyengine_us/parameters/gov/states/dc/tax/income/subtractions/sources.yaml @@ -19,3 +19,4 @@ values: - taxable_unemployment_compensation - dc_disabled_exclusion_subtraction - dc_disability_exclusion + - us_govt_interest_person diff --git a/policyengine_us/parameters/gov/states/de/tax/income/subtractions/subtractions.yaml b/policyengine_us/parameters/gov/states/de/tax/income/subtractions/subtractions.yaml index fd3718a25e7..0500b926636 100644 --- a/policyengine_us/parameters/gov/states/de/tax/income/subtractions/subtractions.yaml +++ b/policyengine_us/parameters/gov/states/de/tax/income/subtractions/subtractions.yaml @@ -3,6 +3,7 @@ values: 2021-01-01: - de_pension_exclusion # (3) - taxable_social_security # (4) + - us_govt_interest_person # The elderly or disabled income exclusion is computed separately # - de_elderly_or_disabled_income_exclusion # (2) diff --git a/policyengine_us/tests/policy/baseline/gov/states/al/tax/income/al_us_govt_bond_interest.yaml b/policyengine_us/tests/policy/baseline/gov/states/al/tax/income/al_us_govt_bond_interest.yaml new file mode 100644 index 00000000000..8e38892af6a --- /dev/null +++ b/policyengine_us/tests/policy/baseline/gov/states/al/tax/income/al_us_govt_bond_interest.yaml @@ -0,0 +1,8 @@ +- name: AL includes US government bond interest in AGI deductions + period: 2024 + input: + state_code: AL + interest_income: 10_000 + us_govt_interest: 5_000 + output: + al_agi: 5_000 diff --git a/policyengine_us/tests/policy/baseline/gov/states/ar/tax/income/ar_us_govt_bond_interest.yaml b/policyengine_us/tests/policy/baseline/gov/states/ar/tax/income/ar_us_govt_bond_interest.yaml new file mode 100644 index 00000000000..9a94fb38c1a --- /dev/null +++ b/policyengine_us/tests/policy/baseline/gov/states/ar/tax/income/ar_us_govt_bond_interest.yaml @@ -0,0 +1,7 @@ +- name: AR includes US government bond interest in exemptions + period: 2024 + input: + state_code: AR + us_govt_interest_person: 5_000 + output: + ar_exemptions: 5_000 diff --git a/policyengine_us/tests/policy/baseline/gov/states/az/tax/income/az_us_govt_bond_interest.yaml b/policyengine_us/tests/policy/baseline/gov/states/az/tax/income/az_us_govt_bond_interest.yaml new file mode 100644 index 00000000000..be1f51b1a99 --- /dev/null +++ b/policyengine_us/tests/policy/baseline/gov/states/az/tax/income/az_us_govt_bond_interest.yaml @@ -0,0 +1,7 @@ +- name: AZ includes US government bond interest in subtractions + period: 2024 + input: + state_code: AZ + us_govt_interest: 5_000 + output: + az_subtractions: 5_000 diff --git a/policyengine_us/tests/policy/baseline/gov/states/ca/tax/income/ca_us_govt_bond_interest.yaml b/policyengine_us/tests/policy/baseline/gov/states/ca/tax/income/ca_us_govt_bond_interest.yaml new file mode 100644 index 00000000000..7287bec3715 --- /dev/null +++ b/policyengine_us/tests/policy/baseline/gov/states/ca/tax/income/ca_us_govt_bond_interest.yaml @@ -0,0 +1,7 @@ +- name: CA includes US government bond interest in AGI subtractions + period: 2024 + input: + state_code: CA + us_govt_interest: 5_000 + output: + ca_agi_subtractions: 5_000 diff --git a/policyengine_us/tests/policy/baseline/gov/states/co/tax/income/co_us_govt_bond_interest.yaml b/policyengine_us/tests/policy/baseline/gov/states/co/tax/income/co_us_govt_bond_interest.yaml new file mode 100644 index 00000000000..a04f57e5202 --- /dev/null +++ b/policyengine_us/tests/policy/baseline/gov/states/co/tax/income/co_us_govt_bond_interest.yaml @@ -0,0 +1,7 @@ +- name: CO includes US government bond interest in subtractions + period: 2024 + input: + state_code: CO + us_govt_interest: 5_000 + output: + co_subtractions: 5_000 diff --git a/policyengine_us/tests/policy/baseline/gov/states/ct/tax/income/ct_us_govt_bond_interest.yaml b/policyengine_us/tests/policy/baseline/gov/states/ct/tax/income/ct_us_govt_bond_interest.yaml new file mode 100644 index 00000000000..bf3c9360dac --- /dev/null +++ b/policyengine_us/tests/policy/baseline/gov/states/ct/tax/income/ct_us_govt_bond_interest.yaml @@ -0,0 +1,7 @@ +- name: CT includes US government bond interest in AGI subtractions + period: 2024 + input: + state_code: CT + us_govt_interest: 5_000 + output: + ct_agi_subtractions: 5_000 diff --git a/policyengine_us/tests/policy/baseline/gov/states/dc/tax/income/dc_us_govt_bond_interest.yaml b/policyengine_us/tests/policy/baseline/gov/states/dc/tax/income/dc_us_govt_bond_interest.yaml new file mode 100644 index 00000000000..e9664f84008 --- /dev/null +++ b/policyengine_us/tests/policy/baseline/gov/states/dc/tax/income/dc_us_govt_bond_interest.yaml @@ -0,0 +1,7 @@ +- name: DC includes US government bond interest in income subtractions + period: 2024 + input: + state_code: DC + us_govt_interest_person: 5_000 + output: + dc_income_subtractions: 5_000 diff --git a/policyengine_us/tests/policy/baseline/gov/states/de/tax/income/de_us_govt_bond_interest.yaml b/policyengine_us/tests/policy/baseline/gov/states/de/tax/income/de_us_govt_bond_interest.yaml new file mode 100644 index 00000000000..6eece145488 --- /dev/null +++ b/policyengine_us/tests/policy/baseline/gov/states/de/tax/income/de_us_govt_bond_interest.yaml @@ -0,0 +1,7 @@ +- name: DE includes US government bond interest in subtractions + period: 2024 + input: + state_code: DE + us_govt_interest_person: 5_000 + output: + de_subtractions: 5_000 diff --git a/policyengine_us/tests/policy/baseline/gov/states/ga/tax/income/ga_us_govt_bond_interest.yaml b/policyengine_us/tests/policy/baseline/gov/states/ga/tax/income/ga_us_govt_bond_interest.yaml new file mode 100644 index 00000000000..b6507f336ea --- /dev/null +++ b/policyengine_us/tests/policy/baseline/gov/states/ga/tax/income/ga_us_govt_bond_interest.yaml @@ -0,0 +1,7 @@ +- name: GA includes US government bond interest in subtractions + period: 2024 + input: + state_code: GA + us_govt_interest: 5_000 + output: + ga_subtractions: 5_000 diff --git a/policyengine_us/tests/policy/baseline/gov/states/hi/tax/income/hi_us_govt_bond_interest.yaml b/policyengine_us/tests/policy/baseline/gov/states/hi/tax/income/hi_us_govt_bond_interest.yaml new file mode 100644 index 00000000000..5f1753f37de --- /dev/null +++ b/policyengine_us/tests/policy/baseline/gov/states/hi/tax/income/hi_us_govt_bond_interest.yaml @@ -0,0 +1,7 @@ +- name: HI includes US government bond interest in subtractions + period: 2024 + input: + state_code: HI + us_govt_interest: 5_000 + output: + hi_subtractions: 5_000