policyengine-us 1.451.0__py3-none-any.whl → 1.452.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,14 @@
1
+ description: Illinois uses this fixed household size for Family Planning Program income calculations.
2
+ values:
3
+ 2022-12-01: 2
4
+ metadata:
5
+ unit: person
6
+ period: year
7
+ label: Illinois Family Planning Program fixed household size
8
+ reference:
9
+ - title: IDHS Program Standards
10
+ href: https://www.dhs.state.il.us/page.aspx?item=21741
11
+ - title: DHS MR #22.28 Family Planning - Financial Eligibility
12
+ href: https://www.dhs.state.il.us/page.aspx?item=146077
13
+ - title: 42 CFR § 435.603(k) - Allows states to "increase the family size of the individual by one"
14
+ href: https://www.law.cornell.edu/cfr/text/42/435.603#k
@@ -0,0 +1,15 @@
1
+ description: Illinois limits income to this share of the federal poverty level under the Family Planning Program.
2
+ values:
3
+ 2022-12-01: 2.13
4
+ metadata:
5
+ unit: /1
6
+ period: year
7
+ label: Illinois Family Planning Program income limit rate
8
+ reference:
9
+ # Can't find statutory or regulatory references
10
+ - title: IDHS Program Standards
11
+ href: https://www.dhs.state.il.us/page.aspx?item=21741
12
+ - title: DHS MR #22.28 Family Planning - Financial Eligibility
13
+ href: https://www.dhs.state.il.us/page.aspx?item=146077
14
+ - title: HFS Family Planning Program
15
+ href: https://hfs.illinois.gov/medicalclients/familyplanning.html
@@ -0,0 +1,35 @@
1
+ # IL FPP income limit is 213% FPL (208% + 5% disregard)
2
+ # 2024 FPL for household size 2: $20,440
3
+ # 213% * $20,440 = $43,537.20
4
+
5
+ - name: Case 1, income at 100% FPL.
6
+ period: 2024
7
+ input:
8
+ state_code: IL
9
+ il_fpp_income_level: 1.0
10
+ output:
11
+ il_fpp_income_eligible: true
12
+
13
+ - name: Case 2, income at 213% FPL limit.
14
+ period: 2024
15
+ input:
16
+ state_code: IL
17
+ il_fpp_income_level: 2.13
18
+ output:
19
+ il_fpp_income_eligible: true
20
+
21
+ - name: Case 3, income over 213% FPL limit.
22
+ period: 2024
23
+ input:
24
+ state_code: IL
25
+ il_fpp_income_level: 2.14
26
+ output:
27
+ il_fpp_income_eligible: false
28
+
29
+ - name: Case 4, zero income.
30
+ period: 2024
31
+ input:
32
+ state_code: IL
33
+ il_fpp_income_level: 0
34
+ output:
35
+ il_fpp_income_eligible: true
@@ -0,0 +1,27 @@
1
+ # IL FPP uses applicant's income only with fixed household size of 2
2
+ # 2024 FPL for household size 2 in contiguous US: $15,060 + $5,380 = $20,440
3
+
4
+ - name: Case 1, income at 100% FPL.
5
+ period: 2024
6
+ input:
7
+ state_code: IL
8
+ adjusted_gross_income_person: 20_440
9
+ output:
10
+ il_fpp_income_level: 1.0
11
+
12
+ - name: Case 2, income at 213% FPL.
13
+ period: 2024
14
+ input:
15
+ state_code: IL
16
+ adjusted_gross_income_person: 43_537
17
+ output:
18
+ # 43,537 / 20,440 = 2.13
19
+ il_fpp_income_level: 2.13
20
+
21
+ - name: Case 3, zero income.
22
+ period: 2024
23
+ input:
24
+ state_code: IL
25
+ adjusted_gross_income_person: 0
26
+ output:
27
+ il_fpp_income_level: 0
@@ -0,0 +1,116 @@
1
+ # Illinois Family Planning Program Integration Tests
2
+ #
3
+ # Key rules:
4
+ # - Only applicant's income counted (not household)
5
+ # - Fixed household size of 2 for FPL calculation
6
+ # - Income limit: 213% FPL (~$43,537 for 2024)
7
+ # - Must NOT be pregnant
8
+ # - Must NOT be enrolled in full Medicaid
9
+ #
10
+ # 2024 FPL for HH size 2: $20,440
11
+ # 213% * $20,440 = $43,537.20
12
+
13
+ - name: Case 1, married couple with different incomes.
14
+ period: 2024
15
+ input:
16
+ people:
17
+ person1:
18
+ age: 30
19
+ employment_income: 25_000
20
+ is_pregnant: false
21
+ person2:
22
+ age: 32
23
+ employment_income: 60_000
24
+ is_pregnant: false
25
+ tax_units:
26
+ tax_unit:
27
+ members: [person1, person2]
28
+ filing_status: JOINT
29
+ households:
30
+ household:
31
+ members: [person1, person2]
32
+ state_code: IL
33
+ output:
34
+ # person1: $25,000 / $20,440 = 1.22 (122% FPL) - eligible
35
+ # person2: $60,000 / $20,440 = 2.94 (294% FPL) - over limit
36
+ il_fpp_income_eligible: [true, false]
37
+ il_fpp_eligible: [true, false]
38
+
39
+ - name: Case 2, pregnant vs non-pregnant.
40
+ period: 2024
41
+ input:
42
+ people:
43
+ person1:
44
+ age: 28
45
+ employment_income: 20_000
46
+ is_pregnant: true
47
+ person2:
48
+ age: 30
49
+ employment_income: 20_000
50
+ is_pregnant: false
51
+ tax_units:
52
+ tax_unit:
53
+ members: [person1, person2]
54
+ households:
55
+ household:
56
+ members: [person1, person2]
57
+ state_code: IL
58
+ output:
59
+ # Both income eligible but person1 is pregnant
60
+ il_fpp_income_eligible: [true, true]
61
+ # person1 ineligible (pregnant), person2 eligible
62
+ il_fpp_eligible: [false, true]
63
+
64
+ - name: Case 3, income at boundary.
65
+ period: 2024
66
+ input:
67
+ people:
68
+ person1:
69
+ age: 25
70
+ employment_income: 43_500
71
+ is_pregnant: false
72
+ tax_units:
73
+ tax_unit:
74
+ members: [person1]
75
+ households:
76
+ household:
77
+ members: [person1]
78
+ state_code: IL
79
+ output:
80
+ # $43,500 / $20,440 = 2.128 (~213% FPL) - just under limit
81
+ il_fpp_income_eligible: [true]
82
+ il_fpp_eligible: [true]
83
+
84
+ - name: Case 4, family with children.
85
+ period: 2024
86
+ input:
87
+ people:
88
+ person1:
89
+ age: 35
90
+ employment_income: 30_000
91
+ is_pregnant: false
92
+ person2:
93
+ age: 33
94
+ employment_income: 25_000
95
+ is_pregnant: false
96
+ person3:
97
+ age: 10
98
+ is_pregnant: false
99
+ person4:
100
+ age: 8
101
+ is_pregnant: false
102
+ tax_units:
103
+ tax_unit:
104
+ members: [person1, person2, person3, person4]
105
+ households:
106
+ household:
107
+ members: [person1, person2, person3, person4]
108
+ state_code: IL
109
+ output:
110
+ # Each person evaluated individually with fixed HH size 2
111
+ # person1: $30,000 / $20,440 = 1.47 (147% FPL) - income eligible
112
+ # person2: $25,000 / $20,440 = 1.22 (122% FPL) - income eligible
113
+ # person3, person4: $0 income - income eligible
114
+ il_fpp_income_eligible: [true, true, true, true]
115
+ # Children are Medicaid-eligible, so ineligible for FPP
116
+ il_fpp_eligible: [true, true, false, false]
@@ -0,0 +1,40 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class il_fpp_eligible(Variable):
5
+ value_type = bool
6
+ entity = Person
7
+ label = "Illinois Family Planning Program eligible"
8
+ definition_period = YEAR
9
+ reference = (
10
+ "https://www.dhs.state.il.us/page.aspx?item=146077",
11
+ "https://hfs.illinois.gov/medicalclients/familyplanning.html",
12
+ "https://www.ilga.gov/agencies/JCAR/EntirePart?titlepart=07700635",
13
+ )
14
+ defined_for = StateCode.IL
15
+
16
+ def formula(person, period, parameters):
17
+ # Note: Illinois has two Family Planning programs:
18
+ # 1. Family Planning Presumptive Eligibility (FPPE) - temporary
19
+ # coverage, does NOT require citizenship/immigration status
20
+ # 2. Ongoing Family Planning Program - 1 year coverage, REQUIRES
21
+ # US citizenship or qualified immigrant status
22
+ # This variable models the ongoing program. The only eligibility
23
+ # difference between the two is the immigration requirement.
24
+
25
+ income_eligible = person("il_fpp_income_eligible", period)
26
+ # Must NOT be pregnant (pregnant individuals should apply for
27
+ # maternal health programs instead)
28
+ not_pregnant = ~person("is_pregnant", period)
29
+ # Use shared IL HFS immigration status check
30
+ immigration_eligible = person(
31
+ "il_hfs_immigration_status_eligible", period
32
+ )
33
+ # Cannot be enrolled in other non-spenddown full medical coverage
34
+ not_on_medicaid = ~person("is_medicaid_eligible", period)
35
+ return (
36
+ income_eligible
37
+ & not_pregnant
38
+ & immigration_eligible
39
+ & not_on_medicaid
40
+ )
@@ -0,0 +1,18 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class il_fpp_income_eligible(Variable):
5
+ value_type = bool
6
+ entity = Person
7
+ label = "Illinois Family Planning Program income eligible"
8
+ definition_period = YEAR
9
+ reference = (
10
+ "https://www.dhs.state.il.us/page.aspx?item=146077",
11
+ "https://hfs.illinois.gov/medicalclients/familyplanning.html",
12
+ )
13
+ defined_for = StateCode.IL
14
+
15
+ def formula(person, period, parameters):
16
+ p = parameters(period).gov.states.il.hfs.fpp.eligibility
17
+ income_level = person("il_fpp_income_level", period)
18
+ return income_level <= p.income_limit
@@ -0,0 +1,29 @@
1
+ from policyengine_us.model_api import *
2
+ from policyengine_us.variables.gov.hhs.tax_unit_fpg import fpg
3
+
4
+
5
+ class il_fpp_income_level(Variable):
6
+ value_type = float
7
+ entity = Person
8
+ label = "Illinois Family Planning Program income level"
9
+ unit = "/1"
10
+ definition_period = YEAR
11
+ reference = (
12
+ "https://www.dhs.state.il.us/page.aspx?item=146077",
13
+ "https://hfs.illinois.gov/medicalclients/familyplanning.html",
14
+ )
15
+ defined_for = StateCode.IL
16
+
17
+ def formula(person, period, parameters):
18
+ # Only the applicant's income is counted (not household income)
19
+ income = person("adjusted_gross_income_person", period)
20
+
21
+ # Fixed household size of 2 per IL FPP policy
22
+ p = parameters(period).gov.states.il.hfs.fpp.eligibility
23
+
24
+ # Calculate FPG using fixed household size
25
+ state_group = person.household("state_group_str", period)
26
+ fpp_fpg = fpg(p.household_size, state_group, period, parameters)
27
+
28
+ # Return income as fraction of FPL
29
+ return income / fpp_fpg
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: policyengine-us
3
- Version: 1.451.0
3
+ Version: 1.452.0
4
4
  Summary: Add your description here.
5
5
  Author-email: PolicyEngine <hello@policyengine.org>
6
6
  License-File: LICENSE
@@ -1722,6 +1722,8 @@ policyengine_us/parameters/gov/states/il/dhs/tanf/payment_level/rate.yaml,sha256
1722
1722
  policyengine_us/parameters/gov/states/il/hfs/README.md,sha256=jmIQaoRykj2TP8ncF9dzcnmmHvKt6KAGiw3bc70FOWE,53
1723
1723
  policyengine_us/parameters/gov/states/il/hfs/qualified_noncitizen_statuses.yaml,sha256=MSu-36WX6DA0Z4whXTTKTCaA6BNXbSwmKn727Pu0GuA,555
1724
1724
  policyengine_us/parameters/gov/states/il/hfs/bcc/eligibility/age.yaml,sha256=eiDkRHOIUnrwUdTOYhWPNfHN7iX26iQDlEfrRWavTtc,508
1725
+ policyengine_us/parameters/gov/states/il/hfs/fpp/eligibility/household_size.yaml,sha256=fmt5oTej94sqnzD-wCIEsrdaJiJtijHbzt_kADU0Tz4,636
1726
+ policyengine_us/parameters/gov/states/il/hfs/fpp/eligibility/income_limit.yaml,sha256=oZ08f-73i3LVutJ_ugFrEOn5jvVOpr4va0WeaSdrYqU,641
1725
1727
  policyengine_us/parameters/gov/states/il/hfs/hbwd/README.md,sha256=g8RosiLvJfMlwbLpf8w8rYt3rCNVhvXLbOdvR-q14iw,55
1726
1728
  policyengine_us/parameters/gov/states/il/hfs/hbwd/eligibility/age.yaml,sha256=7jVZvwb-_5uF8UrZm4CRB5ia2LV7TVyINb-aVFySNrY,804
1727
1729
  policyengine_us/parameters/gov/states/il/hfs/hbwd/eligibility/asset/limit.yaml,sha256=5k7HK2AUNrkUTuhNSyM_fpRrQ12pTT-FFbAke6wKrCM,743
@@ -4406,6 +4408,9 @@ policyengine_us/tests/policy/baseline/gov/states/il/hfs/il_hfs_immigration_statu
4406
4408
  policyengine_us/tests/policy/baseline/gov/states/il/hfs/bcc/eligibility/il_bcc_age_eligible.yaml,sha256=Pu0NJYv5T0ZepkX1hRwXY7NOqi4C02J9KfEenBHSLFk,628
4407
4409
  policyengine_us/tests/policy/baseline/gov/states/il/hfs/bcc/eligibility/il_bcc_eligible.yaml,sha256=npt6gCEhNGot4u15K3BcTBGZMOo8vdqQti8S3f0K-9w,2107
4408
4410
  policyengine_us/tests/policy/baseline/gov/states/il/hfs/bcc/eligibility/il_bcc_insurance_eligible.yaml,sha256=ydvJdNgfOEC47kPR1X4PbJO23B08otUN79y-LsKj498,818
4411
+ policyengine_us/tests/policy/baseline/gov/states/il/hfs/fpp/il_fpp_income_eligible.yaml,sha256=H0gP1GQkEjgpVsbnuahc3J2u81ZHKSjqy-tGQK6ZSbo,743
4412
+ policyengine_us/tests/policy/baseline/gov/states/il/hfs/fpp/il_fpp_income_level.yaml,sha256=1utbQspJ6_caFD1nIIWljQXFnmCIwJHGO82m7sAVi0g,642
4413
+ policyengine_us/tests/policy/baseline/gov/states/il/hfs/fpp/integration.yaml,sha256=xMIkKrlAHmW9ndxhep1lV9DdyDRUNqFx4VRy6ctt614,3073
4409
4414
  policyengine_us/tests/policy/baseline/gov/states/il/hfs/hbwd/il_hbwd_person.yaml,sha256=iwCwQ_5wBizUxc1Xkf9mxUH11NCHI2K7iWLlTLkeCnI,924
4410
4415
  policyengine_us/tests/policy/baseline/gov/states/il/hfs/hbwd/il_hbwd_premium.yaml,sha256=4tQpF3t8WjgF8apN0ZEiZYk7sIcPD-NpqzK5rH02p9I,2376
4411
4416
  policyengine_us/tests/policy/baseline/gov/states/il/hfs/hbwd/integration.yaml,sha256=eylv9q2Mq_8J2JvqnpEScWa5wxw3EzsQDg8dMP8FtKw,5587
@@ -7070,6 +7075,9 @@ policyengine_us/variables/gov/states/il/hfs/il_hfs_immigration_status_eligible.p
7070
7075
  policyengine_us/variables/gov/states/il/hfs/bcc/eligibility/il_bcc_age_eligible.py,sha256=bbIU53E4h10SJtdiv-1lw_MV6QQfHn6bl4ARWWre4c4,520
7071
7076
  policyengine_us/variables/gov/states/il/hfs/bcc/eligibility/il_bcc_eligible.py,sha256=91CmAnCT_9bz-6I5WKhc63j0T9hKeXKsh2wJazcOaH4,890
7072
7077
  policyengine_us/variables/gov/states/il/hfs/bcc/eligibility/il_bcc_insurance_eligible.py,sha256=1hI_cXQ4ir0rxzQSm9IDBeeTO0BA2UhscSP6FKrvuP8,1232
7078
+ policyengine_us/variables/gov/states/il/hfs/fpp/il_fpp_income_level.py,sha256=lCPqrLWOJolmojwjAsxUJVurJHgoqIn-D-6uW9zEwkU,1046
7079
+ policyengine_us/variables/gov/states/il/hfs/fpp/eligibility/il_fpp_eligible.py,sha256=JcPU_9ZvzjJrRPrRgKzXD2h4B663QyIQhPjdpnPVLmI,1668
7080
+ policyengine_us/variables/gov/states/il/hfs/fpp/eligibility/il_fpp_income_eligible.py,sha256=tAe3LRORz18ILEloRG8XHU5Bi4puIXFLCFnu--8_Qfg,621
7073
7081
  policyengine_us/variables/gov/states/il/hfs/hbwd/il_hbwd.py,sha256=14ryrMqVYWkI097V_PHJQ75RS0FacdE3_F27LNmNh1A,534
7074
7082
  policyengine_us/variables/gov/states/il/hfs/hbwd/il_hbwd_person.py,sha256=LSZSx6zuPJHzYBeIRciC-zFpA1RJgi4x-dBEORijPMY,861
7075
7083
  policyengine_us/variables/gov/states/il/hfs/hbwd/il_hbwd_premium.py,sha256=Kk8N3pxVMSYXNNxxO7N4Xj85Guq7GmIXV1CflALYZzw,846
@@ -9007,8 +9015,8 @@ policyengine_us/variables/input/farm_income.py,sha256=BEKxYmHNNnWJAAvULl5qZJigy5
9007
9015
  policyengine_us/variables/input/geography.py,sha256=Ux0ueAf0rhZaflyEqz81UuXP3xKCKBDvoO3CrKhiQEc,5421
9008
9016
  policyengine_us/variables/input/self_employment_income.py,sha256=PwsGz8R4lRikKWUYOhsC0qosNNLXq4f5SQmfw4S3mk8,511
9009
9017
  policyengine_us/variables/input/self_employment_income_before_lsr.py,sha256=E8fcX9Nlyqz8dziHhQv_euutdmoIwFMMWePUwbbwv_w,379
9010
- policyengine_us-1.451.0.dist-info/METADATA,sha256=AeQ-6UZutv-43tAcuCM0VqkRS4UlTNHv4ubn9tAoJxQ,1649
9011
- policyengine_us-1.451.0.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
9012
- policyengine_us-1.451.0.dist-info/entry_points.txt,sha256=MLaqNyNTbReALyKNkde85VkuFFpdPWAcy8VRG1mjczc,57
9013
- policyengine_us-1.451.0.dist-info/licenses/LICENSE,sha256=2N5ReRelkdqkR9a-KP-y-shmcD5P62XoYiG-miLTAzo,34519
9014
- policyengine_us-1.451.0.dist-info/RECORD,,
9018
+ policyengine_us-1.452.0.dist-info/METADATA,sha256=n82yTjLHDZaFSMAz1LHhyrK-XoXW7jodEFJ6FcG-iH8,1649
9019
+ policyengine_us-1.452.0.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
9020
+ policyengine_us-1.452.0.dist-info/entry_points.txt,sha256=MLaqNyNTbReALyKNkde85VkuFFpdPWAcy8VRG1mjczc,57
9021
+ policyengine_us-1.452.0.dist-info/licenses/LICENSE,sha256=2N5ReRelkdqkR9a-KP-y-shmcD5P62XoYiG-miLTAzo,34519
9022
+ policyengine_us-1.452.0.dist-info/RECORD,,