Skip to content

Index the Arizona standard deduction under A.R.S. 43-1041(H) - #9928

Merged
MaxGhenis merged 3 commits into
mainfrom
az-standard-deduction-2026-indexing
Oct 9, 2026
Merged

MaxGhenis merged 3 commits into
mainfrom
az-standard-deduction-2026-indexing

Conversation

@MaxGhenis

Copy link
Copy Markdown
Contributor

Summary

policyengine-us left the Arizona standard deduction at its 2025 amounts ($15,750 single) in 2026 and every later year. This PR indexes it under A.R.S. 43-1041(H).

The law

  • A.R.S. 43-1041(A), as amended by Laws 2026, ch. 140 (HB 4168), sec. 16, and made retroactive to tax year 2025 by sec. 35(A): "$15,750, subject to subsection H of this section" (single and separate), $23,625 head of household, $31,500 joint. HB 4168 did not amend subsection H.
  • A.R.S. 43-1041(H): "For each taxable year beginning from and after December 31, 2019, the department shall adjust the dollar amounts prescribed by subsection A, paragraphs 1, 2 and 3 of this section for inflation in the same manner in which the federal basic standard deduction is adjusted for inflation pursuant to section 63 of the internal revenue code."
  • 26 U.S.C. 63(c)(7)(B)(ii) indexes the same $15,750 and $23,625 federal amounts from a 2024 base for years after 2025, rounding increases down to a multiple of $50. Rev. Proc. 2025-32 sec. 4.14(1) gives the 2026 results: $16,100 single and separate, $24,150 head of household, $32,200 joint.

The Arizona and federal 2025 amounts are equal and the method is the same, so the 2026 Arizona amounts equal the federal ones. Joint is $32,200, the federal-match amount (200% of single under 63(c)(2)(A)); ADOR published federal-equal joint amounts in every year from 2021 to 2025.

The defect

gov.states.az.tax.income.deductions.standard.amount carried uprating: gov.irs.uprating on its parent node, with a comment that it "remains inactive pending selective propagation in PolicyEngine/policyengine-core#537". policyengine-core uprates only Parameter leaves whose own metadata names an uprating, and the parent does not set propagate_metadata_to_children, so no filing-status amount was ever indexed after its last listed value (2025).

The fix

  • Add the 2026 amounts from Rev. Proc. 2025-32 to each filing status, citing 43-1041(A) and (H), Laws 2026 ch. 140 and the Rev. Proc.
  • Move the uprating onto each filing-status amount's own metadata, with section 63's round-down to $50 (the same block the federal standard deduction uses), and drop the inert parent key. This does not depend on core#537.

Invariants

  • For every filing status and every year from 2025 to 2035, the Arizona amount equals the federal basic standard deduction (same 2025 base, same indexing method). This holds under current law; a federal change other than indexing would break it, and the test says so.
  • The amounts never fall from one year to the next.
  • After 2026, each amount equals floor_50(amount_2026 × uprating(year) / uprating(2026)), an independent recomputation of the round-down.

These are exhaustive over the 4 statuses × 11 years, in policyengine_us/tests/core/test_state_uprating_rounding.py::test_az_standard_deduction_is_indexed_like_the_federal_basic_amount (fails on main with 15750 == 16100, 23625 == 24150 and 31500 == 32200).

Tests

  • az_base_standard_deduction.yaml: 2026 amounts for all four filing statuses (4 cases, all fail on main).
  • integration.yaml: a scenario_018-shaped single filer in 2026: AZ AGI $61,592, standard deduction $16,100, taxable income $45,492, tax $1,137.30 (fails on main with $15,750).
  • integration.yaml, "HB 4168 (2026) combined effect": the head-of-household case had encoded the unindexed $23,625. It now expects $24,150 + $1,000 = $25,150, taxable income $52,050, tax $1,301.25 and $1,176.25 after the $125 dependent credit.

Local runs: the AZ deduction and integration tests (88 passed), the remaining AZ tax, credit and contrib tests (265 passed), and the new invariant (4 passed).

Evidence

PolicyBench reference audit, scenario_018 × state_income_tax_before_refundable_credits: the reference was $1,146.05 (standard deduction $15,750) and the law gives $1,137.30.

  • Verification: PolicyEngine/policybench-wt/reference-adversary/reference_audit/2026-10-05-reference-adversary/verification/independent/az_018.md
  • Case: .../reference_audit/2026-10-05-reference-adversary/runs/claude/cases/us__scenario_018__state_income_tax_before_refundable_credits/

Impact

Raises the Arizona standard deduction in 2026 by $350 (single and separate), $525 (head of household) or $700 (joint), and keeps it indexed from 2027 on. Arizona taxable income and tax fall for standard-deduction filers. The rate is 2.5%, so the 2026 tax change is at most $17.50 per return.

axiom: A.R.S. 43-1041(A),(H) queued: rulespec-us us-az/statutes/43-1041.yaml still encodes the pre-HB 4168 amounts ($12,200 / $18,350 / $24,400) and defers the subsection H indexing; the pe-parity issue link is added here before merge.

🤖 Generated with Claude Code

The Arizona standard deduction's uprating sat on the parent parameter
node. policyengine-core uprates only parameters whose own metadata names
an uprating and the parent did not propagate its metadata, so every
filing-status amount stayed at its 2025 value in 2026 and later.

Laws 2026, ch. 140 (HB 4168) set the 43-1041(A) amounts to the federal
2025 amounts ($15,750 / $23,625 / $31,500), "subject to subsection H",
and 43-1041(H) indexes them "in the same manner in which the federal
basic standard deduction is adjusted for inflation pursuant to section
63". Add the 2026 amounts from Rev. Proc. 2025-32 sec. 4.14(1) ($16,100
single and separate, $24,150 head of household, $32,200 joint) and move
the uprating, with section 63's round-down to $50, onto each amount.

Tests: 2026 base amounts for every filing status, a scenario_018-shaped
single filer (PolicyBench reference audit 2026-10-05), the HB 4168 2026
head-of-household case updated to the indexed amount, and a parameter
invariant that the Arizona amounts equal the federal ones from 2025 to
2035 and follow the $50 round-down.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Review of #9928: projecting the joint amount on its own with a $50
round-down can break the federal method's rule that the joint amount is
twice the single amount (26 U.S.C. 63(c)(2)(A)); with the current index
2027 would give $33,150 against 2 x $16,550. The 2026 joint amount is
twice the single amount, so a $100 round-down of the joint amount equals
twice the single amount's $50 round-down in every later year.

The invariant now checks single, separate and head of household against
the federal amounts and the $50 round-down of the model's projection,
and checks joint = 2 x single for 2025 to 2035.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@MaxGhenis

Copy link
Copy Markdown
Contributor Author

Handing off to the US + core hub.

  • Head: 4a772cde79e17064fe8d440c9aca3871acc02a28
  • Independent review: approve (Opus 5.5 lane, Subfleet job 20261008-101900-pe-us-adversary-review; verdicts in /Users/maxghenis/reviews/policybench-reference-adversary-2026-10/engine_review.md).
  • CI: gh pr checks exits 0. GitHub reports MERGEABLE, blocked only on the required approving review.
  • Context: found by PolicyBench's reference adversary (Add the reference adversary and record its first run (evidence only; no score changes) policybench#200, decision d1022).
  • Notes: Arizona standard deduction indexing (A.R.S. 43-1041(H)); the reviewer's one nit (move an assert out of a loop) is optional.

Nothing is pending from the opening session.

@MaxGhenis
MaxGhenis merged commit 4419d14 into main Oct 9, 2026
26 checks passed
@MaxGhenis

Copy link
Copy Markdown
Contributor Author

US + core hub merge audit, us#9928 at 35afb2fe29 (squash; branch updated from main; PR diff byte-identical to the reviewed 4a772cde79): Index the Arizona standard deduction under A.R.S. 43-1041(H).

  • Origin: PolicyBench's reference adversary (Add the reference adversary and record its first run (evidence only; no score changes) policybench#200) found the engine defect. Max ruled d1022 on 2026-10-06 to exclude the affected cells until a fixed policyengine-us release lands.
  • Review: independent Opus 5.5 review APPROVE (Subfleet), verdict in ~/reviews/policybench-reference-adversary-2026-10/. The PR's last commit predates the review, so the reviewed head is this head.
  • Hand-off: from local_3dd3d124. Nothing was pending from the opening session.
  • Gates checked live at merge:
    • gh pr checks exits 0;
    • the latest Pull request run at the head concluded success;
    • MERGEABLE;
    • not a draft;
    • no CHANGES_REQUESTED review;
    • the semantic-overlap guard;
    • head pinned.
  • Impact: as stated in the PR body's impact section. This is a bug fix that corrects the model to the cited law.
  • --admin: used only because a required approving review is the sole block.

@MaxGhenis
MaxGhenis deleted the az-standard-deduction-2026-indexing branch October 9, 2026 04:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant