Skip to content
Open
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
9 changes: 9 additions & 0 deletions changelog_entry.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
- bump: minor
changes:
added:
- is_qualifying_child_dependent variable for age-based qualifying child test
- is_qualifying_relative_dependent variable for income-based qualifying relative test
- dependent_gross_income variable for calculating dependent gross income
changed:
- is_child_dependent now includes qualifying child, qualifying relative, and disability pathways
- Head of household eligibility now correctly includes qualifying relatives (fixes issue 6994)
Original file line number Diff line number Diff line change
Expand Up @@ -475,10 +475,12 @@ class ny_exemptions_dependent(Variable):
def formula(person, period, parameters):
p = parameters(period).gov.contrib.states.ny.wftc.exemptions
if p.in_effect:
child_dependent = person("is_child_dependent", period)
child_dependent = person(
"is_qualifying_child_dependent", period
)
wftc_eligible_child = person("ny_wftc_eligible_child", period)
return child_dependent & ~wftc_eligible_child
return person("is_child_dependent", period)
return person("is_qualifying_child_dependent", period)

class ny_exemptions(Variable):
value_type = float
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
is_tax_unit_head_or_spouse: true
meets_eitc_identification_requirements: true
person2:
is_child_dependent: true
is_qualifying_child_dependent: true
meets_eitc_identification_requirements: true
tax_units:
tax_unit:
Expand All @@ -22,10 +22,10 @@
is_tax_unit_head_or_spouse: true
meets_eitc_identification_requirements: true
person2:
is_child_dependent: true
is_qualifying_child_dependent: true
meets_eitc_identification_requirements: true
person3:
is_child_dependent: true
is_qualifying_child_dependent: true
meets_eitc_identification_requirements: true
tax_units:
tax_unit:
Expand All @@ -41,10 +41,10 @@
is_tax_unit_head_or_spouse: true
meets_eitc_identification_requirements: true
person2:
is_child_dependent: true
is_qualifying_child_dependent: true
meets_eitc_identification_requirements: true
person3:
is_child_dependent: true
is_qualifying_child_dependent: true
meets_eitc_identification_requirements: false
tax_units:
tax_unit:
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
- name: Dependent with employment income.
period: 2024
input:
people:
parent:
age: 45
is_tax_unit_head: true
employment_income: 50_000
child:
age: 20
is_tax_unit_dependent: true
is_tax_unit_spouse: false
employment_income: 5_000
tax_units:
tax_unit:
members: [parent, child]
households:
household:
members: [parent, child]
output:
# Only dependent's income counts, head's income excluded
dependent_gross_income: [0, 5_000]

- name: Head or spouse has zero dependent gross income.
period: 2024
input:
people:
head:
age: 45
is_tax_unit_head: true
employment_income: 100_000
spouse:
age: 43
is_tax_unit_spouse: true
employment_income: 50_000
tax_units:
tax_unit:
members: [head, spouse]
households:
household:
members: [head, spouse]
output:
# Head and spouse are not dependents, so their dependent_gross_income is 0
dependent_gross_income: [0, 0]

- name: Dependent with multiple income sources.
period: 2024
input:
people:
parent:
age: 50
is_tax_unit_head: true
child:
age: 22
is_tax_unit_dependent: true
is_tax_unit_spouse: false
employment_income: 3_000
taxable_interest_income: 500
tax_units:
tax_unit:
members: [parent, child]
households:
household:
members: [parent, child]
output:
# Sum of all income sources
dependent_gross_income: [0, 3_500]
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
is_tax_unit_dependent: false
dependent:
age: 1
is_child_dependent: true
is_qualifying_child_dependent: true
tax_units:
tax_unit:
members: [head, dependent]
Expand Down Expand Up @@ -35,10 +35,10 @@
is_tax_unit_dependent: false
dependent:
age: 1
is_child_dependent: true
is_qualifying_child_dependent: true
dependent2:
age: 15
is_child_dependent: true
is_qualifying_child_dependent: true
tax_units:
tax_unit:
members: [head, dependent, dependent2]
Expand Down Expand Up @@ -66,10 +66,10 @@
is_tax_unit_dependent: false
dependent:
age: 1
is_child_dependent: true
is_qualifying_child_dependent: true
dependent2:
age: 15
is_child_dependent: true
is_qualifying_child_dependent: true
tax_units:
tax_unit:
members: [head, dependent, dependent2]
Expand Down Expand Up @@ -97,10 +97,10 @@
is_tax_unit_dependent: false
dependent:
age: 1
is_child_dependent: true
is_qualifying_child_dependent: true
dependent2:
age: 15
is_child_dependent: true
is_qualifying_child_dependent: true
tax_units:
tax_unit:
members: [head, dependent, dependent2]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,13 @@
input:
people:
person1:
is_child_dependent: false
is_qualifying_child_dependent: false
is_disabled: false
person3:
is_child_dependent: false
is_qualifying_child_dependent: false
is_disabled: false
person4:
is_child_dependent: true
is_qualifying_child_dependent: true
is_disabled: false
tax_units:
tax_unit:
Expand All @@ -27,10 +27,10 @@
people:
person1: {}
person3:
is_child_dependent: true
is_qualifying_child_dependent: true
is_disabled: false
person4:
is_child_dependent: true
is_qualifying_child_dependent: true
is_disabled: false
tax_units:
tax_unit:
Expand All @@ -49,10 +49,10 @@
person1:
is_tax_unit_head: true
person3:
is_child_dependent: true
is_qualifying_child_dependent: true
is_disabled: false
person4:
is_child_dependent: true
is_qualifying_child_dependent: true
is_disabled: true
tax_units:
tax_unit:
Expand All @@ -71,10 +71,10 @@
person1:
is_tax_unit_head: true
person3:
is_child_dependent: false
is_qualifying_child_dependent: false
is_disabled: false
person4:
is_child_dependent: false
is_qualifying_child_dependent: false
is_disabled: true
tax_units:
tax_unit:
Expand All @@ -91,13 +91,13 @@
input:
people:
person1:
is_child_dependent: false
is_qualifying_child_dependent: false
is_disabled: false
person3:
is_child_dependent: false
is_qualifying_child_dependent: false
is_disabled: false
person4:
is_child_dependent: true
is_qualifying_child_dependent: true
is_disabled: false
tax_units:
tax_unit:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@
age: 30
person2:
age: 15
is_child_dependent: false
is_qualifying_child_dependent: false
households:
household:
members: [person1, person2]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
state_code: OR
adjusted_gross_income: 100_000
is_disabled: true
is_child_dependent: true
is_qualifying_child_dependent: true
output:
or_disabled_child_dependent_exemptions: 1

Expand All @@ -14,6 +14,6 @@
state_code: OR
adjusted_gross_income: 100_001
is_disabled: true
is_child_dependent: true
is_qualifying_child_dependent: true
output:
or_disabled_child_dependent_exemptions: 0
Original file line number Diff line number Diff line change
Expand Up @@ -31,9 +31,9 @@
people:
filer: {}
grandparent:
is_child_dependent: false
is_qualifying_child_dependent: false
child:
is_child_dependent: true
is_qualifying_child_dependent: true
tax_units:
tax_unit:
members: [filer, grandparent, child]
Expand All @@ -52,7 +52,7 @@
father: {}
mother: {}
child:
is_child_dependent: true
is_qualifying_child_dependent: true
tax_units:
tax_unit:
members: [father, mother, child]
Expand All @@ -71,9 +71,9 @@
father: {}
mother: {}
child 1:
is_child_dependent: true
is_qualifying_child_dependent: true
child 2:
is_child_dependent: true
is_qualifying_child_dependent: true
tax_units:
tax_unit:
members: [father, mother, child 1, child 2]
Expand Down
Loading