Skip to content

Add Utah homeowner/renter property tax relief#8317

Open
daphnehanse11 wants to merge 5 commits into
PolicyEngine:mainfrom
daphnehanse11:codex/ut-homeowner-renter-circuit-breaker
Open

Add Utah homeowner/renter property tax relief#8317
daphnehanse11 wants to merge 5 commits into
PolicyEngine:mainfrom
daphnehanse11:codex/ut-homeowner-renter-circuit-breaker

Conversation

@daphnehanse11
Copy link
Copy Markdown
Collaborator

Summary

  • Adds Utah Homeowner's/Renter's Relief eligibility using the current age, surviving-spouse, income, and rent/property-tax rules.
  • Adds the 2025 household-income schedule used for 2026 applications, including renter percentage rates and maximum homeowner/renter amounts.
  • Adds focused eligibility and amount tests.

Closes #8182.

Note: this PR models the core homeowner credit and renter credit schedule. It does not separately model the homeowner add-on equal to tax on 20 percent of home fair market value because PE-US does not currently have the Utah-specific property tax mechanics needed to price that add-on separately.

Tests

  • /Users/daphnehansell/Documents/GitHub/policyengine-us/.venv/bin/python policyengine_us/tests/test_batched.py policyengine_us/tests/policy/baseline/gov/states/ut/tax/property/homeowner_renter_relief --batches 1
  • /Users/daphnehansell/Documents/GitHub/policyengine-us/.venv/bin/ruff check policyengine_us/variables/gov/states/ut/tax/property/homeowner_renter_relief
  • /Users/daphnehansell/Documents/GitHub/policyengine-us/.venv/bin/python -m pytest policyengine_us/tests/test_parameter_files.py policyengine_us/tests/test_system_import.py

@codecov
Copy link
Copy Markdown

codecov Bot commented May 14, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.00%. Comparing base (8cb60e7) to head (e5d0248).
⚠️ Report is 66 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff            @@
##              main     #8317   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files            3         4    +1     
  Lines           63        69    +6     
=========================================
+ Hits            63        69    +6     
Flag Coverage Δ
unittests 100.00% <100.00%> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@daphnehanse11 daphnehanse11 marked this pull request as draft May 14, 2026 20:29
@daphnehanse11 daphnehanse11 marked this pull request as ready for review May 18, 2026 20:04
Add ut_homeowner_renter_relief to a new
gov.states.ut.tax.income.credits.refundable list and wire
ut_refundable_credits to it. The relief now flows through
household_refundable_state_tax_credits to household_net_income,
matching the pattern used for WI homestead credit and other state
property tax rebates.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copy link
Copy Markdown
Contributor

@MaxGhenis MaxGhenis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I reviewed the latest head and checked the existing PR comments/reviews. There are no prior human review comments on this PR, but I found two blockers against the Utah statute/form.

  1. policyengine_us/variables/gov/states/ut/tax/property/homeowner_renter_relief/ut_homeowner_renter_relief_eligible.py:24 and policyengine_us/variables/gov/states/ut/tax/property/homeowner_renter_relief/ut_homeowner_renter_relief.py:20 use the claimant tax unit's adjusted_gross_income as the program income. Utah Code 59-2a-101 defines household income as income received by all members of the claimant's household, with specific exclusions, and TC-90CB has a household income worksheet for cases where more than one household member received income. In a two-tax-unit household, this PR ignores the other adult's income for both eligibility and the amount schedule. I reproduced this with a temporary YAML case where an age-eligible renter with $10k income lived with another adult tax unit earning $60k; the model still returned the claimant eligible.

  2. The eligibility formula omits the dependent-claimant exclusion. Utah Code 59-2a-205(4) for renter credits and 59-2a-305(2)(a) for homeowner credits disallow the credit when the individual is claimed as another person's exemption/dependent, and TC-90CB asks whether the claimant cannot be claimed on someone else's return. The repo already has claimed_as_dependent_on_another_return / head_is_dependent_elsewhere style signals. I reproduced this with a temporary YAML case where a filer with claimed_as_dependent_on_another_return: true still returned ut_homeowner_renter_relief_eligible: true.

The rent-plus-property-tax case looks defensible: Utah Code 59-2a-202 and 59-2a-302 explicitly allow a claimant who meets both parts to claim a renter credit, homeowner credit, or both. The fixes above should be covered with regression tests before merge.

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.

Add Utah Homeowner's/Renter's (Circuit Breaker) Relief

2 participants