From ad56b658abc317349f92cfc5e948ba0bb7e1d5f3 Mon Sep 17 00:00:00 2001 From: PavelMakarchuk Date: Tue, 28 Jul 2026 01:01:14 -0400 Subject: [PATCH] Fix West Virginia low-income exclusion double count --- .../fix-wv-low-income-exclusion-once.fixed.md | 1 + .../wv/tax/income/subtractions/subtractions.yaml | 1 - .../states/wv/tax/income/wv_taxable_income.yaml | 16 ++++++++++++++++ .../states/wv/tax/income/wv_taxable_income.py | 2 +- 4 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 changelog.d/fix-wv-low-income-exclusion-once.fixed.md diff --git a/changelog.d/fix-wv-low-income-exclusion-once.fixed.md b/changelog.d/fix-wv-low-income-exclusion-once.fixed.md new file mode 100644 index 00000000000..620cd068c93 --- /dev/null +++ b/changelog.d/fix-wv-low-income-exclusion-once.fixed.md @@ -0,0 +1 @@ +Fix West Virginia adjusted gross and taxable income to apply the low-income earned-income exclusion exactly once. diff --git a/policyengine_us/parameters/gov/states/wv/tax/income/subtractions/subtractions.yaml b/policyengine_us/parameters/gov/states/wv/tax/income/subtractions/subtractions.yaml index c028e2692d6..a3fe563b8fb 100644 --- a/policyengine_us/parameters/gov/states/wv/tax/income/subtractions/subtractions.yaml +++ b/policyengine_us/parameters/gov/states/wv/tax/income/subtractions/subtractions.yaml @@ -9,7 +9,6 @@ values: - salt_refund_income # Line 36 - wv_529_plan_deduction - wv_senior_citizen_disability_deduction # Line 47 - - wv_low_income_earned_income_exclusion metadata: unit: list diff --git a/policyengine_us/tests/policy/baseline/gov/states/wv/tax/income/wv_taxable_income.yaml b/policyengine_us/tests/policy/baseline/gov/states/wv/tax/income/wv_taxable_income.yaml index 7f51566e413..80f5639f25c 100644 --- a/policyengine_us/tests/policy/baseline/gov/states/wv/tax/income/wv_taxable_income.yaml +++ b/policyengine_us/tests/policy/baseline/gov/states/wv/tax/income/wv_taxable_income.yaml @@ -17,3 +17,19 @@ state_code: WV output: wv_taxable_income: 500 + +- name: Low-income earned-income exclusion is applied once after West Virginia AGI + period: 2026 + input: + adjusted_gross_income: 10_000 + tax_unit_earned_income: 7_000 + filing_status: SINGLE + tax_unit_size: 1 + state_code: WV + output: + wv_low_income_earned_income_exclusion: 7_000 + wv_subtractions: 0 + wv_agi: 10_000 + wv_personal_exemption: 2_000 + wv_taxable_income: 1_000 + wv_income_tax_before_non_refundable_credits: 21.10 diff --git a/policyengine_us/variables/gov/states/wv/tax/income/wv_taxable_income.py b/policyengine_us/variables/gov/states/wv/tax/income/wv_taxable_income.py index 7fa3dc4a341..2ee76815835 100644 --- a/policyengine_us/variables/gov/states/wv/tax/income/wv_taxable_income.py +++ b/policyengine_us/variables/gov/states/wv/tax/income/wv_taxable_income.py @@ -7,7 +7,7 @@ class wv_taxable_income(Variable): label = "West Virginia taxable income" unit = USD definition_period = YEAR - reference = "https://code.wvlegislature.gov/11-21-4E/" + reference = "https://code.wvlegislature.gov/11-21-11/" defined_for = StateCode.WV def formula(tax_unit, period, parameters):