Skip to content

Check the OBBBA tips and overtime window through policyengine-us's in_effect switches at the next engine bump #1431

Open

Description

@MaxGhenis

PolicyEngine/policyengine-us#10397 ends the tips and overtime deductions after 2028 with two new switches, gov.irs.deductions.tip_income.in_effect and gov.irs.deductions.overtime_income.in_effect. It also names both deductions in deductions_if_itemizing and deductions_if_not_itemizing for every year, so the switches alone set the years.

test_obbba_no_tax_channels_are_absent_from_2024_law_deduction_lists (packages/microcosm-build/tests/engine_contract/us/test_us_fiscal_targets.py) asserts that neither deduction appears in those lists at 2024-01-01 or 2029-01-01. That guard will fail on the first engine bump that reaches #10397.

Nothing breaks today: uv.lock holds policyengine-us at 2.2.1, and test_locked_policyengine_us_pin_guards_the_obbba_window_premise forces any bump to re-run this guard.

The guard's premise survives. After #10397 both variables compute as 0 in 2024 and from 2029, so a neutralize-variable delta in those years stays zero.

What to change at the bump

  • Assert the window through the switches: false at 2024-01-01 and 2029-01-01, true at 2025-01-01, 2026-01-01 and 2028-01-01.
  • Keep the list-membership assertions for 2025-2028, and drop the ones for 2024 and 2029.

🤖 Generated with Claude Code

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions