Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
0bcebf6
Net capital gain distributions inside the capital loss limit
MaxGhenis Oct 4, 2026
9afd5aa
Merge remote-tracking branch 'upstream/main' into sch-d-cg-distributi…
MaxGhenis Oct 4, 2026
bb6eb56
Count distributions inside Schedule D in the NII invariant reference
MaxGhenis Oct 4, 2026
6f03491
Test the netting when a reform drops a gross income source
MaxGhenis Oct 4, 2026
9c20294
Address review: Michigan adjustments, filer-only worksheet test, floors
MaxGhenis Oct 4, 2026
fb5ccb2
Merge remote-tracking branch 'upstream/main' into sch-d-cg-distributi…
MaxGhenis Oct 4, 2026
b047c78
Follow 1211(b) in the #9647 invariant and a Maryland surtax test
MaxGhenis Oct 5, 2026
1a54e89
Net Michigan business and rental losses on MI-1040CR lines 16 and 17
MaxGhenis Oct 5, 2026
8d5163e
Merge upstream/main into mi-household-resources-business-losses
MaxGhenis Oct 5, 2026
b6c5f61
Keep dependents' business and rental items off Michigan lines 16 and 17
MaxGhenis Oct 5, 2026
ab04d39
Subtract only Schedule 1 adjustments on MI-1040CR line 30
MaxGhenis Oct 5, 2026
2823f4a
Tighten MI line 30 property tests and describe the input convention
MaxGhenis Oct 5, 2026
3b26b04
Check each exclusion's effect on the student loan deduction in the MI…
MaxGhenis Oct 5, 2026
68f36eb
Merge remote-tracking branch 'upstream/main' into sch-d-cg-distributi…
MaxGhenis Oct 6, 2026
638c794
Add the combined #9781 regression case, a joint Maryland surtax case,…
MaxGhenis Oct 6, 2026
c45512e
Merge remote-tracking branch 'upstream/sch-d-cg-distributions-agi' in…
MaxGhenis Oct 6, 2026
0a2ca21
Use tax_unit_non_dep_add for lines 16 and 17; describe the dependent …
MaxGhenis Oct 6, 2026
b845167
Merge remote-tracking branch 'upstream/mi-household-resources-busines…
MaxGhenis Oct 6, 2026
14bfcbc
Merge remote-tracking branch 'upstream/main' into mi-household-resour…
MaxGhenis Oct 6, 2026
9402482
Merge remote-tracking branch 'upstream/mi-household-resources-busines…
MaxGhenis Oct 6, 2026
9089ce9
Merge remote-tracking branch 'upstream/main' into mi-household-resour…
MaxGhenis Oct 6, 2026
6d436af
Sum Michigan line 30 over the head and spouse
MaxGhenis Oct 6, 2026
99a9ba3
Merge branch 'main' into mi-household-resources-schedule-1-adjustments
MaxGhenis Oct 7, 2026
c584207
Restore capped educator expenses in Michigan household resources
MaxGhenis Oct 8, 2026
f1425da
Merge branch 'main' into mi-household-resources-schedule-1-adjustments
MaxGhenis Oct 9, 2026
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
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Michigan household resources (MI-1040CR line 30) subtract only the claimant's and spouse's U.S. Schedule 1 adjustments to income, so income excluded under IRC 135, 137, 931 and 933 (savings bond interest for higher education, employer adoption benefits, possession and Puerto Rico income) stays in household resources, and a dependent's own IRA deduction, early withdrawal penalty or educator expenses no longer come off. Educator expenses use the federal deduction capped per eligible educator.
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
description: Michigan subtracts the following federal above-the-line deductions, the U.S. Schedule 1 adjustments to income, from household resources.
values:
# MI-1040CR line 30: "Enter total adjustments from your U.S. Form 1040,
# Schedule 1." Each entry is a Schedule 1 Part II line. Federal
# above-the-line deductions that are not Part II adjustments stay off this
# list: loss_ald (business, rental and capital losses, which are income
# items) and the exclusions from gross income under IRC 135, 137, 931 and
# 933 (us_bonds_for_higher_ed, qualified_adoption_assistance_expense,
# specified_possession_income and puerto_rico_income).
2021-01-01:
- educator_expense_ald # line 11, capped per eligible educator
- health_savings_account_ald # line 13
- self_employment_tax_ald # line 15
- self_employed_pension_contribution_ald # line 16
- self_employed_health_insurance_ald # line 17
- early_withdrawal_penalty # line 18
- alimony_expense_ald # line 19a
- traditional_ira_contributions # line 20
- student_loan_interest_ald # line 21
metadata:
unit: list
period: year
label: Michigan household resources adjustments
reference:
- title: Michigan 2024 Individual Income Tax Instructions, MI-1040CR line 30
href: https://www.michigan.gov/taxes/-/media/Project/Websites/taxes/Forms/IIT/TY2024/MI-1040-Instructions.pdf#page=33
- title: Michigan 2025 Individual Income Tax Instructions, MI-1040CR line 30
href: https://www.michigan.gov/taxes/-/media/Project/Websites/taxes/Forms/IIT/TY2025/MI-1040-Book.pdf#page=32
- title: 2025 Schedule 1 (Form 1040), Part II, Adjustments to Income
href: https://www.irs.gov/pub/irs-prior/f1040s1--2025.pdf#page=2
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,146 @@
# Line 33: 10,000 - (1,000 + 3,000) = 6,000.
mi_household_resources: 6_000

- name: Savings bond interest excluded under IRC 135 stays in household resources
period: 2025
input:
people:
person1:
age: 45
employment_income_before_lsr: 30_000
taxable_interest_income: 2_000
us_bonds_for_higher_ed: 1_500
tax_units:
tax_unit:
members: [person1]
households:
household:
members: [person1]
state_code: MI
output:
# Federal: Form 8815 excludes 1,500 of the 2,000 of interest (Schedule B
# line 3), so AGI is 30,000 + 500 = 30,500.
adjusted_gross_income: 30_500
# Line 14: 30,000.
# Line 15: "All interest and dividend income (including nontaxable
# interest)": 2,000.
# Line 30: 0. The Form 8815 exclusion is not a Schedule 1 adjustment.
# Line 33: 30,000 + 2,000 = 32,000.
mi_household_resources: 32_000

- name: Employer adoption benefits excluded under IRC 137 stay in household resources
period: 2025
input:
people:
person1:
age: 45
# Includes 5,000 the employer paid for qualified adoption expenses.
employment_income_before_lsr: 60_000
qualified_adoption_assistance_expense: 5_000
tax_units:
tax_unit:
members: [person1]
households:
household:
members: [person1]
state_code: MI
output:
# Federal: the 5,000 is excluded (Form 8839 Part III) and left out of
# W-2 box 1, so AGI is 55,000.
adjusted_gross_income: 55_000
# Line 14: "all compensation received as an employee ... and any other
# amounts reported to you on Form W-2". The adoption benefits are
# reported in W-2 box 12 (code T): 55,000 + 5,000 = 60,000.
# Line 30: 0. The exclusion is not a Schedule 1 adjustment.
# Line 33: 60,000.
mi_household_resources: 60_000

- name: Puerto Rico income excluded under IRC 933 stays in household resources
period: 2025
input:
people:
person1:
age: 45
# Includes 15,000 earned in Puerto Rico before moving to Michigan.
employment_income_before_lsr: 45_000
tax_units:
tax_unit:
members: [person1]
puerto_rico_income: 15_000
households:
household:
members: [person1]
state_code: MI
output:
# Federal: section 933 excludes the 15,000, so AGI is 30,000.
adjusted_gross_income: 30_000
# Line 14: all wages, 45,000. Total household resources include "all
# income exempt or excluded from AGI" (book page 26).
# Line 30: 0. The exclusion is not a Schedule 1 adjustment.
# Line 33: 45,000.
mi_household_resources: 45_000

- name: Possession income excluded under IRC 931 stays in household resources
period: 2025
input:
people:
person1:
age: 45
# Includes 8,000 of income from a specified possession.
employment_income_before_lsr: 40_000
tax_units:
tax_unit:
members: [person1]
specified_possession_income: 8_000
households:
household:
members: [person1]
state_code: MI
output:
# Federal: section 931 excludes the 8,000, so AGI is 32,000.
adjusted_gross_income: 32_000
# Line 14: all wages, 40,000, as "all income exempt or excluded from AGI"
# counts (book page 26).
# Line 30: 0. The exclusion is not a Schedule 1 adjustment.
# Line 33: 40,000.
mi_household_resources: 40_000

- name: Schedule 1 adjustments reduce household resources and federal exclusions do not
period: 2025
input:
people:
person1:
age: 45
# Includes 4,000 of employer adoption benefits (W-2 box 12, code T).
employment_income_before_lsr: 50_000
qualified_adoption_assistance_expense: 4_000
taxable_interest_income: 3_000
us_bonds_for_higher_ed: 1_000
traditional_ira_contributions: 2_000
early_withdrawal_penalty: 300
student_loan_interest: 1_000
health_insurance_premiums: 1_200
tax_units:
tax_unit:
members: [person1]
households:
household:
members: [person1]
state_code: MI
output:
# Federal: 50,000 + 3,000 - 4,000 (IRC 137) - 1,000 (IRC 135) = 48,000
# of gross income, less Schedule 1 line 26 (2,000 + 300 + 1,000 =
# 3,300): AGI 44,700, under the student loan interest phase-out.
adjusted_gross_income: 44_700
# Line 14: 50,000. Line 15: 3,000, including the excluded 1,000.
# Line 28: 53,000.
# Line 30: IRA deduction (Schedule 1 line 20) 2,000 + penalty on early
# withdrawal of savings (line 18) 300 + student loan interest deduction
# (line 21) 1,000 = 3,300.
# Line 31: 1,200.
# Line 33: 53,000 - (3,300 + 1,200) = 48,500.
mi_household_resources: 48_500

- name: Negative business income floored at 0
period: 2024
input:
Expand Down Expand Up @@ -465,3 +605,122 @@
# dependent's Schedule E income is not on line 16. Line 30: 0.
# Line 33: 50,000.
mi_household_resources: 50_000

- name: A dependent's own Schedule 1 adjustments are not on the claimant's line 30
period: 2025
input:
people:
person1:
age: 45
is_tax_unit_head: true
is_tax_unit_spouse: false
is_tax_unit_dependent: false
employment_income_before_lsr: 50_000
person2:
age: 20
is_tax_unit_head: false
is_tax_unit_spouse: false
is_tax_unit_dependent: true
is_full_time_student: true
traditional_ira_contributions: 2_000
early_withdrawal_penalty: 100
educator_expense: 300
tax_units:
tax_unit:
members: [person1, person2]
marital_units:
marital_unit:
members: [person1]
dependent_marital_unit:
members: [person2]
households:
household:
members: [person1, person2]
state_code: MI
output:
# Line 14: 50,000. Line 30 is "your U.S. Form 1040, Schedule 1": the
# dependent's IRA deduction, early withdrawal penalty and educator
# expenses are on the dependent's own Schedule 1, so line 30 is 0.
# Line 33: 50,000.
mi_household_resources: 50_000

- name: Claimant educator expenses reduce household resources through Schedule 1 line 11
period: 2025
input:
people:
claimant:
age: 45
employment_income_before_lsr: 50_000
educator_expense: 300
tax_units:
tax_unit:
members: [claimant]
households:
household:
members: [claimant]
state_code: MI
output:
educator_expense_ald: 300
above_the_line_deductions: 300
adjusted_gross_income: 49_700
# Line 14: 50,000. Line 30: Schedule 1 line 11, 300.
# Line 33: 50,000 - 300 = 49,700.
mi_household_resources: 49_700

- name: Spouse educator expenses reduce household resources on a joint return
period: 2025
input:
people:
claimant:
age: 45
is_tax_unit_head: true
is_tax_unit_spouse: false
is_tax_unit_dependent: false
employment_income_before_lsr: 50_000
spouse:
age: 45
is_tax_unit_head: false
is_tax_unit_spouse: true
is_tax_unit_dependent: false
educator_expense: 300
tax_units:
tax_unit:
members: [claimant, spouse]
filing_status: JOINT
marital_units:
marital_unit:
members: [claimant, spouse]
households:
household:
members: [claimant, spouse]
state_code: MI
output:
educator_expense_ald: 300
above_the_line_deductions: 300
adjusted_gross_income: 49_700
# Line 30 includes the spouse's Schedule 1 line 11 deduction, 300.
# Line 33: 50,000 - 300 = 49,700.
mi_household_resources: 49_700

- name: Educator expenses above the per-educator cap reduce household resources only by the capped deduction
period: 2025
input:
people:
claimant:
age: 45
employment_income_before_lsr: 50_000
educator_expense: 1_000
tax_units:
tax_unit:
members: [claimant]
households:
household:
members: [claimant]
state_code: MI
output:
educator_expense_ald: 300
above_the_line_deductions: 300
adjusted_gross_income: 49_700
# Schedule 1 line 11 and MI-1040CR line 30 use the 2025 cap of 300.
# Line 33: 50,000 - 300 = 49,700.
mi_household_resources: 49_700
Loading
Loading