Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions changelog.d/issue-8301-state-ui-income-flow.added.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Integrated modeled Alabama, New York, Oklahoma, Pennsylvania, and Utah unemployment insurance into unemployment compensation income flows.
Original file line number Diff line number Diff line change
Expand Up @@ -367,3 +367,27 @@
# so the clamp binds. Annual = 275 * 14 = 3,850 (equals MBA, so the
# MBA cap is not additionally binding here).
al_ui: 3_850

- name: Case 13, AL UI feeds unemployment compensation income flows.
# Reuses Case 1's monetarily-eligible input set (al_ui = $3,850) and asserts
# the state benefit also surfaces through the federal unemployment
# compensation income chain (unemployment_compensation adds al_ui).
period: 2024
absolute_error_margin: 0.01
input:
age: 35
state_code: AL
employment_income: 100_000
is_tax_unit_dependent: false
al_ui_high_quarter_wages: 10_000
al_ui_second_high_quarter_wages: 10_000
al_ui_base_period_wages: 40_000
al_ui_quarters_with_wages: 4
al_ui_weekly_earnings: 0
weeks_unemployed: 20
output:
al_ui: 3_850
unemployment_compensation: 3_850
tax_unit_unemployment_compensation: 3_850
taxable_unemployment_compensation: 3_850
tax_unit_taxable_unemployment_compensation: 3_850
Original file line number Diff line number Diff line change
Expand Up @@ -246,3 +246,27 @@
ny_ui_weekly_payable: 71.5
# Annual = $71.50 * 10 = $715; MBA = $143 * 26 = $3,718 (not binding).
ny_ui: 715

- name: Case 9, NY UI feeds unemployment compensation income flows.
# Reuses Case 1's monetarily-eligible input set (ny_ui = $7,982) and asserts
# the state benefit also surfaces through the federal unemployment
# compensation income chain (unemployment_compensation adds ny_ui).
period: 2025
absolute_error_margin: 0.01
input:
age: 35
state_code: NY
employment_income: 100_000
is_tax_unit_dependent: false
ny_ui_high_quarter_wages: 8_000
ny_ui_base_period_wages: 28_000
ny_ui_quarters_with_wages: 4
weeks_unemployed: 26
ny_ui_weekly_hours_worked: 0
ny_ui_gross_weekly_earnings: 0
output:
ny_ui: 7_982
unemployment_compensation: 7_982
tax_unit_unemployment_compensation: 7_982
taxable_unemployment_compensation: 7_982
tax_unit_taxable_unemployment_compensation: 7_982
Original file line number Diff line number Diff line change
Expand Up @@ -213,3 +213,27 @@
# Note: intermediate variables (eligibility, WBA, etc.) may still
# compute, but the top-level ok_ui is gated to OK households only.
ok_ui: 0

- name: Case 8, OK UI feeds unemployment compensation income flows.
# Reuses Case 1's monetarily-eligible input set (ok_ui = $8,000) and asserts
# the state benefit also surfaces through the federal unemployment
# compensation income chain (unemployment_compensation adds ok_ui).
period: 2024
absolute_error_margin: 0.01
input:
age: 35
state_code: OK
employment_income: 100_000
is_tax_unit_dependent: false
ok_ui_high_quarter_taxable_wages: 11_500
ok_ui_high_quarter_total_wages: 11_500
ok_ui_base_period_taxable_wages: 11_500
ok_ui_base_period_total_wages: 35_000
ok_ui_gross_weekly_earnings: 0
weeks_unemployed: 16
output:
ok_ui: 8_000
unemployment_compensation: 8_000
tax_unit_unemployment_compensation: 8_000
taxable_unemployment_compensation: 8_000
tax_unit_taxable_unemployment_compensation: 8_000
Original file line number Diff line number Diff line change
Expand Up @@ -263,3 +263,25 @@
person1:
# Household is outside PA -> defined_for filters the benefit.
pa_uc: 0

- name: Case 8, PA UC feeds unemployment compensation income flows.
period: 2025
absolute_error_margin: 0.01
input:
age: 35
state_code: PA
employment_income: 100_000
is_tax_unit_dependent: false
pa_uc_highest_quarter_wages: 10_000
pa_uc_base_year_wages: 28_000
pa_uc_credit_weeks: 26
weeks_unemployed: 26
pa_uc_gross_weekly_earnings: 0
output:
pa_uc: 10_218
unemployment_compensation: 10_218
tax_unit_unemployment_compensation: 10_218
taxable_unemployment_compensation: 10_218
tax_unit_taxable_unemployment_compensation: 10_218
spm_unit_benefits: 10_218
household_benefits: 10_218
Original file line number Diff line number Diff line change
Expand Up @@ -266,3 +266,27 @@
# weeks_unemployed (17) == duration (17): annual = $395 * 17 = $6,715.
# min($6,715, MBA $6,715) = $6,715 -> cap binds exactly at equality.
ut_ui: 6_715

- name: Case 9, UT UI feeds unemployment compensation income flows.
# Reuses Case 2's monetarily-eligible input set (ut_ui = $19,396) and asserts
# the state benefit also surfaces through the federal unemployment
# compensation income chain (unemployment_compensation adds ut_ui).
period: 2024
absolute_error_margin: 0.01
input:
age: 35
state_code: UT
employment_income: 100_000
is_tax_unit_dependent: false
ut_ui_base_period_wages: 80_000
ut_ui_high_quarter_wages: 25_000
ut_ui_quarters_with_wages: 4
ut_ui_weeks_unemployed: 26
ut_ui_gross_weekly_earnings: 0
ut_ui_weekly_hours_worked: 0
output:
ut_ui: 19_396
unemployment_compensation: 19_396
tax_unit_unemployment_compensation: 19_396
taxable_unemployment_compensation: 19_396
tax_unit_taxable_unemployment_compensation: 19_396
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,4 @@ class unemployment_compensation(Variable):
documentation = "Income from unemployment compensation programs."
definition_period = YEAR
uprating = "calibration.gov.irs.soi.unemployment_compensation"
adds = ["al_ui", "ny_ui", "ok_ui", "pa_uc", "ut_ui"]
Loading