Repository navigation
Apply each year's California SDI rate and the pre-2024 SDI wage limit - #10255
PavelMakarchuk wants to merge 2 commits into
Conversation
The employee SDI rate was 1.3% (the 2026 rate) for every year, with no taxable wage limit. Add EDD's DE 3395 rates for 2019-2026 (1.1% in 2024, 1.2% in 2025) and a taxable wage base parameter that limits contributions through 2023 and has no limit from 2024 (UIC 985(b), SB 951), and apply it in ca_employee_state_disability_insurance_contribution. Fixes #9813. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
PR Review: Apply each year's California SDI rate and the pre-2024 SDI wage limitSummaryThe PR fixes #9813, where California SDI used the 2026 rate (1.3%) with no wage limit in every year. It makes three changes:
Every 2019-2026 value matches EDD's DE 3395 (Rev. 69 (1-26)), and the 2023-2026 values also match EDD's rates page. Removing the limit from 2024 follows UIC 985(b) and DE 3395 footnote 1. Applying the limit per person, rather than per employer, gives the net liability after California's excess-SDI credit, which PolicyEngine doesn't model separately. I hand-checked 12 expectations and all are correct. The formula is vectorized, and no state-gated key variable is added. CI is 27/27 green, and the branch merges cleanly with main. Two things need fixing:
The suggestions are optional:
Critical (must fix)None. Should address1. The pre-2019 backfill contradicts EDD's published 2011-2018 rates and wage limits. Both parameter files start with a comment saying the 2019 value carries back:
The current DE 3395 only goes back to 2019, but EDD published the earlier years in its previous revision. DE 3395 Rev. 61 (12-17) (archived EDD copy, single page) lists:
So the comments are wrong, and so are the results in those years:
Several things make this worth fixing here:
Fix:
2. Add the The body has no line starting with Suggestions
Verified correct
Axiom line assessmentThe body has no
Recommended line. File a dispatch-ready
CI statusAll 27 checks pass at
None is pending or failing. Branch statusThe branch is 2 commits ahead of main (the change on 2026-10-16 and a merge of main on 2026-10-23) and 48 behind. Verdict: REQUEST_CHANGES |
DTrim99
left a comment
There was a problem hiding this comment.
The 2019-2026 rates and wage bases match EDD's DE 3395 and rates page, the 2024+ no-limit rule matches UIC 985(b), and all 12 expectations hand-check. Two should-address items: (1) the 0000-01-01 backfill applies the 2019 rate and limit to earlier years, which contradicts EDD for 2011-2018 (e.g. 2015 was 0.9% and $104,378, so a $200k earner pays 1,183.71 instead of 939.40); add those years, or say they aren't modeled and use 'Part of #9813'; (2) there's no axiom line, so please file a pe-parity issue for UIC 984/985 and mark it queued. Three suggestions. Full report in the comment above.
Summary
gov.states.ca.tax.payroll.disability.employee_ratehad one value, 0.013 (the 2026 rate), from0000-01-01, and California SDI had no taxable wage limit in any year. EDD's Tax Rates, Wage Limits, and Value of Meals and Lodging (DE 3395 Rev. 69 (1-26)) lists the rate and the DI taxable wage base by year, and its footnote says: "Effective January 1, 2024, there is no longer a taxable wage limit and maximum withholdings for each employee subject to SDI contributions." UIC 985(b), added by SB 951, says the limit does not apply to wages paid on or after January 1, 2024. EDD's rates page gives the same 2023-2026 figures.Changes:
employee_rate.yaml: the dated rates above. DE 3395 starts at 2019, so the 2019 rate is the0000-01-01value for earlier years.disability/taxable_wage_base.yaml: the wage bases above,.inffrom 2024-01-01. The 2019 base is the0000-01-01value.ca_employee_state_disability_insurance_contribution: rate x min(wages, taxable wage base).The patched results equal EDD's maximum withholdings in the capped years ($1,229.09 in 2020, $1,539.58 in 2021, $1,601.60 in 2022, $1,378.48 in 2023). The limit applies per employee and employer under UIC 985; the model applies it to each person's total wages, as for the other state wage bases.
Issue reproduction,
ca_employee_state_disability_insurance_contribution:Tests
Added to
ca_employee_state_disability_insurance_contribution.yaml: 2023 below the limit (540), 2023 above the limit (1,378.48), 2024 at $200,000 (2,200), 2025 (720), and a 2026 control at $200,000 (2,600). The file gives 4 failed, 2 passed on main and 6 passed here.Also run on this branch:
tests/policy/baseline/gov/states/ca/,tests/policy/baseline/gov/local/ca/and three other tests that compute California payroll tax (1,766 passed);tests/core/test_payroll_contributions.py(100 passed); parameter code-health tests (124 passed).Fixes #9813
🤖 Generated with Claude Code