Skip to content

Add Kentucky HB 13 and HB 152 graduated income tax reforms#7397

Open
DTrim99 wants to merge 2 commits intoPolicyEngine:mainfrom
DTrim99:ky-hb13-hb152-graduated-income-tax
Open

Add Kentucky HB 13 and HB 152 graduated income tax reforms#7397
DTrim99 wants to merge 2 commits intoPolicyEngine:mainfrom
DTrim99:ky-hb13-hb152-graduated-income-tax

Conversation

@DTrim99
Copy link
Collaborator

@DTrim99 DTrim99 commented Feb 13, 2026

Summary

Implements two Kentucky 2026 legislative session bills that propose graduated income tax rate structures with cliff designs:

HB 13 (TY 2027+)

  • 3.5% on net income up to $250,000
  • 6% on net income between $250,000 and $300,000
  • Cliff: Flat 6% on ALL net income if total exceeds $300,000

HB 152 (TY 2027+)

  • 4% on net income up to $100,000
  • 5% on net income between $100,000 and $125,000
  • 6% on net income between $125,000 and $150,000
  • Cliff: Flat 6% on ALL net income if total exceeds $150,000

Key Design Notes

Both bills share a cliff design - once income exceeds the top threshold, the higher rate applies to the ENTIRE income, not just the marginal amount. This creates significant notch effects at the cliff thresholds.

Implementation

  • Single reform handles both bills with shared logic
  • Parameters in gov/contrib/states/ky/hb13/ and gov/contrib/states/ky/hb152/
  • Each bill has in_effect, brackets, cliff_threshold, and flat_rate parameters
  • Overrides both ky_income_tax_before_non_refundable_credits_indiv and ky_income_tax_before_non_refundable_credits_joint

Test plan

  • HB 13 tests cover: income below first threshold, between brackets, at cliff threshold, above cliff
  • HB 152 tests cover: income in all brackets, at cliff threshold, above cliff, notch effect demonstration
  • Both test joint filing and reform-not-in-effect fallback to baseline
  • Existing KY income tax tests still pass

Closes #7395

References

🤖 Generated with Claude Code

Implements two Kentucky 2026 legislative session bills that propose
graduated income tax rate structures with cliff designs:

HB 13 (TY 2027+):
- 3.5% on net income up to $250,000
- 6% on net income between $250,000 and $300,000
- Flat 6% on ALL net income if total exceeds $300,000

HB 152 (TY 2027+):
- 4% on net income up to $100,000
- 5% on net income between $100,000 and $125,000
- 6% on net income between $125,000 and $150,000
- Flat 6% on ALL net income if total exceeds $150,000

Both bills use a "cliff" design where once income exceeds the top
threshold, the higher rate applies to the ENTIRE income.

Closes PolicyEngine#7395

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@DTrim99
Copy link
Collaborator Author

DTrim99 commented Feb 13, 2026

PR Review

🟢 No Critical Issues Found

The implementation correctly captures the Kentucky HB 13 and HB 152 graduated income tax reforms with their unique cliff design.

🟡 Should Address

  1. Missing PDF page numbers: All 8 parameter files reference bill PDFs without #page=X anchors. Add page numbers for direct navigation to the relevant sections.

    • hb13/brackets.yaml, hb13/cliff_threshold.yaml, hb13/flat_rate.yaml, hb13/in_effect.yaml
    • hb152/brackets.yaml, hb152/cliff_threshold.yaml, hb152/flat_rate.yaml, hb152/in_effect.yaml
  2. Missing edge case tests:

    • Zero income test (both HB 13 and HB 152)
    • Cliff notch effect test for HB 13 (HB 152 has one at line 178, but HB 13 doesn't)
    • Exact bracket boundary tests ($250k for HB 13, $100k and $125k for HB 152)
    • Joint filing with graduated rates (current joint tests only cover above-cliff scenarios)
  3. Negative income handling: The implementation does not have max_(0, ...) protection. If negative taxable income is passed, it will return negative tax. Verify this is intentional or add protection.

🟢 Suggestions

  1. Consider adding section references to parameter titles (e.g., "Kentucky HB 13 Section 1, KRS 141.020" instead of just "Kentucky HB 13 (2026 Session)")

Validation Summary

Check Result
Regulatory Accuracy ✅ Rate structures match bill summaries
Reference Quality ⚠️ 8 files missing PDF page numbers
Code Patterns ✅ Follows PolicyEngine patterns (no hard-coded values)
Test Coverage ⚠️ Missing 5 edge cases
CI Status ⌛ Pending (Lint + Check version passed)

Strengths

  • Zero hard-coded values in formulas - all values from parameters
  • Proper vectorization with where()
  • Clean separation of HB 13 vs HB 152 logic
  • Excellent test coverage with inline calculation documentation
  • Follows VA HB979 reform pattern
  • Correct entity-level implementation (Person, matching baseline)

Next Steps

To auto-fix issues: /fix-pr 7397

Or address manually and re-request review.

Updated all 8 parameter files to include:
- PDF page anchors (#page=3) for direct navigation
- Section references (Section 1, KRS 141.020(2))
- Clarified LegiScan as bill status tracking reference

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Copy link
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.

LGTM - Well-structured implementation of Kentucky HB 13 and HB 152 graduated income tax reforms with cliff design. Parameters, reform logic, and tests are comprehensive and correct. The single CI failure (Quick Feedback) was a GitHub Actions runner shutdown, not a test failure — all Full Suite checks passed.

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.

Implement Kentucky HB 13 and HB 152 graduated income tax reforms

2 participants