Add Texas school district homestead exemptions#8312
Open
daphnehanse11 wants to merge 5 commits into
Open
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #8312 +/- ##
============================================
+ Coverage 78.72% 100.00% +21.27%
============================================
Files 4723 5 -4718
Lines 68774 62 -68712
Branches 340 0 -340
============================================
- Hits 54142 62 -54080
+ Misses 14554 0 -14554
+ Partials 78 0 -78
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Collaborator
Program Review — PR #8312 Texas school district homestead exemptionsSource Documents
Branch Status⚠ PR branch is 283 commit(s) behind main. Consider rebasing before merging. Review was scoped to the PR's actual changes — staleness did not affect findings. Critical (Must Fix)C1. Surviving-spouse arm grants the mandatory §11.13(c) $60,000 exemption, but §11.13(q) only authorizes continuation of the LOCAL OPTION §11.13(d) exemption
C2. Surviving-spouse formula omits required §11.13(q) conditions
C3. References do not cite Tax Code §11.13 subsections directly — primary statutory authority is missing across all 9 files
Should AddressS1.
|
| Category | Count |
|---|---|
| Confirmed correct | 7 |
| Mismatches (verified) | 1 (surviving-spouse arm — §11.13(q) wired to wrong provision; 4 unmodeled conditions bundled within) |
| Mismatches rejected | 2 (both effective-date claims: 2025-01-01: 140_000 and 2025-01-01: 60_000 — investigated and cleared — Prop 13 and Prop 11 passed Nov 2025 with retroactive TY2025 application per SJR temporary provisions, TEA TY2025 MCR letter, and 96-669 verbatim "applies beginning with the 2025 tax year") |
| Unmodeled items | 4 (deceased-spouse age at death; survivor age at time of death; at-death residence; at-death ownership — all §11.13(q) conditions, bundled into C2 if arm is retained, deleted if arm is removed per C1) |
Confirmed-correct items:
general_amount.yaml$140k value (PDF 2 p.7, p.26; PDF 3 p.9)general_amount.yaml2025-01-01 effective date (verifier authoritative: TY2025 per "applies beginning with the 2025 tax year")over_65_or_disabled_amount.yaml$60k value (PDF 2 p.8, p.26; PDF 1 p.2)over_65_or_disabled_amount.yaml2025-01-01 effective date (verifier authoritative: TY2025 per SJR 85 temporary provision + TEA TY2025 letter)over_65_or_disabled_amount.yaml$10k prior value (PDF 1 p.2, PDF 3 p.10)age_threshold.yamlvalue 65 (PDF 2 p.8, §11.13(c))surviving_spouse_age_threshold.yamlvalue 55 (PDF 2 p.8, §11.13(q))
Validation Summary
| Check | Result |
|---|---|
| Regulatory Accuracy | 1 critical (surviving-spouse arm + §11.13(q) conditions, bundled into C1/C2), 1 should-address (disability definition) |
| Reference Quality | 1 critical (no statute citations across 9 files — C3) |
| Code Patterns | 0 critical, 2 should-address (deprecated documentation field, threshold-date misalignment) |
| Test Coverage | 0 critical, 5 should-address (margin, total-variable test, boundary cases, multi-person aggregation, married mixed-age) |
| PDF Value Audit | 1 mismatch (surviving-spouse arm wiring) / 7 confirmed correct / 2 mismatches rejected (effective dates) |
| CI Status | Passing (2 contrib jobs pending) |
Review Severity: REQUEST_CHANGES
Next Steps
- Fix critical issues (C1, C2, C3) — run
/fix-pr 8312to auto-apply. - Resolve should-address items in the same fix pass where appropriate (especially S1, S3, S4, S5 — small mechanical edits).
- Consider rebasing onto main before merging (branch is 283 commits behind).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Closes #8204.
Value Review
Note: this PR models exempt value only, not a property-tax reduction amount, because the statewide exemption applies to school district taxes and PolicyEngine currently has a single real-estate-tax input rather than a school-tax component.
Sources:
Tests
uv run policyengine-core test policyengine_us/tests/policy/baseline/gov/states/tx/tax/property/school_district_homestead_exemption -c policyengine_usuv run pytest policyengine_us/tests/test_parameter_files.py policyengine_us/tests/test_system_import.py -quv run --extra dev ruff check policyengine_us/variables/gov/states/tx/tax/property/school_district_homestead_exemption