policyengine-us 1.413.0__py3-none-any.whl → 1.439.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.
Files changed (480) hide show
  1. policyengine_us/parameters/gov/aca/state_rating_area_cost.yaml +511 -12
  2. policyengine_us/parameters/gov/bls/cpi/c_cpi_u.yaml +23 -6
  3. policyengine_us/parameters/gov/bls/cpi/cpi_u.yaml +21 -18
  4. policyengine_us/parameters/gov/bls/cpi/cpi_w.yaml +25 -22
  5. policyengine_us/parameters/gov/contrib/aca/ptc_simplified_bracket/brackets.yaml +6 -6
  6. policyengine_us/parameters/gov/contrib/aca/ptc_simplified_bracket/income_eligibility.yaml +6 -6
  7. policyengine_us/parameters/gov/contrib/congress/tlaib/economic_dignity_for_all_agenda/end_child_poverty_act/adult_dependent_credit/amount.yaml +9 -0
  8. policyengine_us/parameters/gov/contrib/congress/tlaib/economic_dignity_for_all_agenda/end_child_poverty_act/adult_dependent_credit/min_age.yaml +8 -0
  9. policyengine_us/parameters/gov/contrib/congress/tlaib/economic_dignity_for_all_agenda/end_child_poverty_act/child_benefit/age_limit.yaml +8 -0
  10. policyengine_us/parameters/gov/contrib/congress/tlaib/economic_dignity_for_all_agenda/end_child_poverty_act/filer_credit/amount.yaml +20 -0
  11. policyengine_us/parameters/gov/contrib/congress/tlaib/economic_dignity_for_all_agenda/end_child_poverty_act/filer_credit/eligibility/max_age.yaml +10 -0
  12. policyengine_us/parameters/gov/contrib/congress/tlaib/economic_dignity_for_all_agenda/end_child_poverty_act/filer_credit/eligibility/min_age.yaml +8 -0
  13. policyengine_us/parameters/gov/contrib/congress/tlaib/economic_dignity_for_all_agenda/end_child_poverty_act/filer_credit/phase_out/rate.yaml +8 -0
  14. policyengine_us/parameters/gov/contrib/congress/tlaib/economic_dignity_for_all_agenda/end_child_poverty_act/filer_credit/phase_out/start.yaml +20 -0
  15. policyengine_us/parameters/gov/contrib/congress/tlaib/economic_dignity_for_all_agenda/end_child_poverty_act/in_effect.yaml +8 -0
  16. policyengine_us/parameters/gov/contrib/ctc/per_child_phase_out/avoid_overlap.yaml +7 -0
  17. policyengine_us/parameters/gov/contrib/harris/capital_gains/rates.yaml +12 -0
  18. policyengine_us/parameters/gov/contrib/harris/capital_gains/thresholds.yaml +168 -0
  19. policyengine_us/parameters/gov/contrib/states/ri/ctc/age_limit.yaml +9 -0
  20. policyengine_us/parameters/gov/contrib/states/ri/ctc/amount.yaml +9 -0
  21. policyengine_us/parameters/gov/contrib/states/ri/ctc/in_effect.yaml +9 -0
  22. policyengine_us/parameters/gov/contrib/states/ri/ctc/phaseout/rate.yaml +9 -0
  23. policyengine_us/parameters/gov/contrib/states/ri/ctc/phaseout/threshold.yaml +23 -0
  24. policyengine_us/parameters/gov/contrib/states/ri/ctc/refundability/cap.yaml +9 -0
  25. policyengine_us/parameters/gov/contrib/states/ri/ctc/young_child_boost/age_limit.yaml +9 -0
  26. policyengine_us/parameters/gov/contrib/states/ri/ctc/young_child_boost/amount.yaml +9 -0
  27. policyengine_us/parameters/gov/contrib/states/ri/dependent_exemption/age_limit/in_effect.yaml +9 -0
  28. policyengine_us/parameters/gov/contrib/states/ri/dependent_exemption/age_limit/threshold.yaml +9 -0
  29. policyengine_us/parameters/gov/contrib/states/ri/dependent_exemption/amount.yaml +15 -0
  30. policyengine_us/parameters/gov/contrib/states/ri/dependent_exemption/in_effect.yaml +9 -0
  31. policyengine_us/parameters/gov/contrib/states/ri/dependent_exemption/phaseout/rate.yaml +9 -0
  32. policyengine_us/parameters/gov/contrib/states/ri/dependent_exemption/phaseout/threshold.yaml +23 -0
  33. policyengine_us/parameters/gov/dhs/immigration/qualified_noncitizen_status.yaml +18 -0
  34. policyengine_us/parameters/gov/hhs/medicaid/eligibility/categories/senior_or_disabled/income/limit/couple.yaml +60 -51
  35. policyengine_us/parameters/gov/hhs/medicaid/eligibility/categories/senior_or_disabled/income/limit/individual.yaml +60 -51
  36. policyengine_us/parameters/gov/hhs/tanf/cash/income/sources/earned.yaml +13 -0
  37. policyengine_us/parameters/gov/hhs/tanf/cash/income/sources/unearned.yaml +23 -0
  38. policyengine_us/parameters/gov/irs/ald/student_loan_interest/reduction/start.yaml +7 -1
  39. policyengine_us/parameters/gov/irs/capital_gains/rates.yaml +17 -0
  40. policyengine_us/parameters/gov/irs/capital_gains/thresholds.yaml +182 -0
  41. policyengine_us/parameters/gov/irs/credits/ctc/amount/base.yaml +14 -9
  42. policyengine_us/parameters/gov/irs/credits/ctc/refundable/individual_max.yaml +14 -7
  43. policyengine_us/parameters/gov/irs/credits/eitc/max.yaml +73 -81
  44. policyengine_us/parameters/gov/irs/deductions/qbi/phase_out/start.yaml +19 -7
  45. policyengine_us/parameters/gov/irs/deductions/standard/aged_or_blind/amount.yaml +10 -52
  46. policyengine_us/parameters/gov/irs/deductions/standard/amount.yaml +16 -59
  47. policyengine_us/parameters/gov/irs/gross_income/retirement_contributions/catch_up/limit/401k.yaml +8 -1
  48. policyengine_us/parameters/gov/irs/gross_income/retirement_contributions/catch_up/limit/ira.yaml +7 -0
  49. policyengine_us/parameters/gov/irs/gross_income/retirement_contributions/limit/401k.yaml +6 -0
  50. policyengine_us/parameters/gov/irs/gross_income/retirement_contributions/limit/ira.yaml +5 -0
  51. policyengine_us/parameters/gov/irs/income/amt/exemption/amount.yaml +15 -59
  52. policyengine_us/parameters/gov/irs/income/amt/exemption/phase_out/start.yaml +11 -60
  53. policyengine_us/parameters/gov/irs/income/bracket.yaml +114 -213
  54. policyengine_us/parameters/gov/local/tx/harris/rides/age_threshold.yaml +13 -0
  55. policyengine_us/parameters/gov/local/tx/harris/rides/customer_payment_rate.yaml +12 -0
  56. policyengine_us/parameters/gov/states/ca/tax/income/agi/subtractions.yaml +1 -0
  57. policyengine_us/parameters/gov/states/co/tax/income/credits/care_worker/amount/joint.yaml +10 -0
  58. policyengine_us/parameters/gov/states/co/tax/income/credits/care_worker/amount/single.yaml +10 -0
  59. policyengine_us/parameters/gov/states/co/tax/income/credits/care_worker/income_limit/joint.yaml +10 -0
  60. policyengine_us/parameters/gov/states/co/tax/income/credits/care_worker/income_limit/single.yaml +10 -0
  61. policyengine_us/parameters/gov/states/co/tax/income/credits/refundable.yaml +11 -0
  62. policyengine_us/parameters/gov/states/co/tax/income/credits/sales_tax_refund/amount/scale.yaml +1 -1
  63. policyengine_us/parameters/gov/states/co/tax/income/credits/tabor/joint.yaml +12 -0
  64. policyengine_us/parameters/gov/states/co/tax/income/credits/tabor/single.yaml +12 -0
  65. policyengine_us/parameters/gov/states/de/tax/income/credits/refundable.yaml +2 -2
  66. policyengine_us/parameters/gov/states/de/tax/income/credits/relief_rebate/amount.yaml +1 -1
  67. policyengine_us/parameters/gov/states/ga/tax/income/credits/itemizer/amount.yaml +14 -0
  68. policyengine_us/parameters/gov/states/ga/tax/income/credits/non_refundable.yaml +8 -2
  69. policyengine_us/parameters/gov/states/ga/tax/income/credits/surplus_tax_rebate/amount.yaml +5 -5
  70. policyengine_us/parameters/gov/states/hi/tax/income/alternative_tax/availability.yaml +2 -3
  71. policyengine_us/parameters/gov/states/hi/tax/income/credits/act_115_rebate/joint.yaml +20 -0
  72. policyengine_us/parameters/gov/states/hi/tax/income/credits/act_115_rebate/single.yaml +20 -0
  73. policyengine_us/parameters/gov/states/hi/tax/income/credits/refundable.yaml +6 -0
  74. policyengine_us/parameters/gov/states/id/tax/income/credits/2022_rebate/floor.yaml +1 -1
  75. policyengine_us/parameters/gov/states/id/tax/income/credits/2022_rebate/rate.yaml +1 -1
  76. policyengine_us/parameters/gov/states/id/tax/income/credits/refundable.yaml +4 -4
  77. policyengine_us/parameters/gov/states/id/tax/income/credits/special_seasonal_rebate/floor.yaml +5 -5
  78. policyengine_us/parameters/gov/states/id/tax/income/credits/special_seasonal_rebate/rate.yaml +1 -1
  79. policyengine_us/parameters/gov/states/il/tax/income/credits/income_tax_rebate/amount/dependent.yaml +10 -0
  80. policyengine_us/parameters/gov/states/il/tax/income/credits/income_tax_rebate/amount/joint.yaml +20 -0
  81. policyengine_us/parameters/gov/states/il/tax/income/credits/income_tax_rebate/amount/other.yaml +20 -0
  82. policyengine_us/parameters/gov/states/il/tax/income/credits/income_tax_rebate/max_dependents.yaml +10 -0
  83. policyengine_us/parameters/gov/states/il/tax/income/credits/refundable.yaml +5 -0
  84. policyengine_us/parameters/gov/states/in/tax/income/credits/automatic_refund_rebate/amount/additional.yaml +10 -0
  85. policyengine_us/parameters/gov/states/in/tax/income/credits/automatic_refund_rebate/amount/base.yaml +12 -0
  86. policyengine_us/parameters/gov/states/in/tax/income/credits/refundable.yaml +6 -1
  87. policyengine_us/parameters/gov/states/ma/dta/tcap/gross_income/earned.yaml +2 -2
  88. policyengine_us/parameters/gov/states/ma/eec/ccfa/income/countable_income/sources.yaml +3 -3
  89. policyengine_us/parameters/gov/states/ma/tax/income/credits/refundable.yaml +12 -0
  90. policyengine_us/parameters/gov/states/ma/tax/income/credits/taxpayer_refund_rebate/rate.yaml +10 -0
  91. policyengine_us/parameters/gov/states/me/tax/income/credits/refundable.yaml +6 -0
  92. policyengine_us/parameters/gov/states/me/tax/income/credits/relief_rebate/amount.yaml +10 -0
  93. policyengine_us/parameters/gov/states/me/tax/income/credits/relief_rebate/income_limit.yaml +21 -0
  94. policyengine_us/parameters/gov/states/mn/tax/income/credits/cwfc/ctc/age_limit.yaml +14 -0
  95. policyengine_us/parameters/gov/states/mt/tax/income/credits/non_refundable.yaml +1 -4
  96. policyengine_us/parameters/gov/states/mt/tax/income/credits/rebate/amount.yaml +5 -5
  97. policyengine_us/parameters/gov/states/nm/tax/income/modified_gross_income.yaml +0 -1
  98. policyengine_us/parameters/gov/states/pa/tax/income/credits/eitc/match.yaml +10 -0
  99. policyengine_us/parameters/gov/states/pa/tax/income/credits/refundable.yaml +6 -0
  100. policyengine_us/parameters/gov/states/pa/tax/income/forgiveness/base.yaml +0 -1
  101. policyengine_us/parameters/gov/states/pa/tax/income/forgiveness/dependent_rate.yaml +0 -1
  102. policyengine_us/parameters/gov/states/pa/tax/income/forgiveness/eligibility_income_sources.yaml +1 -1
  103. policyengine_us/parameters/gov/states/pa/tax/income/forgiveness/rate_increment.yaml +0 -1
  104. policyengine_us/parameters/gov/states/pa/tax/income/forgiveness/tax_back.yaml +0 -1
  105. policyengine_us/parameters/gov/states/pa/tax/income/rate.yaml +0 -1
  106. policyengine_us/parameters/gov/states/ri/tax/income/credits/child_tax_rebate/amount.yaml +1 -1
  107. policyengine_us/parameters/gov/states/ri/tax/income/credits/child_tax_rebate/limit/age.yaml +1 -1
  108. policyengine_us/parameters/gov/states/ri/tax/income/credits/child_tax_rebate/limit/child.yaml +1 -1
  109. policyengine_us/parameters/gov/states/ri/tax/income/credits/child_tax_rebate/limit/income.yaml +5 -5
  110. policyengine_us/parameters/gov/states/ri/tax/income/credits/refundable.yaml +1 -4
  111. policyengine_us/parameters/gov/states/sc/tax/income/credits/2022_rebate/amount.yaml +12 -0
  112. policyengine_us/parameters/gov/states/sc/tax/income/credits/non_refundable.yaml +7 -1
  113. policyengine_us/parameters/gov/states/tx/dta/csfp/fpg_limit.yaml +10 -0
  114. policyengine_us/parameters/gov/states/tx/fpp/age_threshold.yaml +10 -0
  115. policyengine_us/parameters/gov/states/tx/fpp/annual_benefit.yaml +12 -0
  116. policyengine_us/parameters/gov/states/tx/fpp/fpg_percentage.yaml +15 -0
  117. policyengine_us/parameters/gov/states/tx/tanf/age_threshold/minor_child.yaml +13 -0
  118. policyengine_us/parameters/gov/states/tx/tanf/age_threshold/student_dependent.yaml +13 -0
  119. policyengine_us/parameters/gov/states/tx/tanf/income/deductions/child_support.yaml +14 -0
  120. policyengine_us/parameters/gov/states/tx/tanf/income/deductions/dependent_care.yaml +23 -0
  121. policyengine_us/parameters/gov/states/tx/tanf/income/deductions/work_expense.yaml +13 -0
  122. policyengine_us/parameters/gov/states/tx/tanf/income/disregards/applicant_fraction.yaml +12 -0
  123. policyengine_us/parameters/gov/states/tx/tanf/income/disregards/continuing_recipient_cap.yaml +13 -0
  124. policyengine_us/parameters/gov/states/tx/tanf/income/disregards/continuing_recipient_months.yaml +14 -0
  125. policyengine_us/parameters/gov/states/tx/tanf/income/disregards/continuing_recipient_rate.yaml +13 -0
  126. policyengine_us/parameters/gov/states/tx/tanf/income/sources/earned.yaml +15 -0
  127. policyengine_us/parameters/gov/states/tx/tanf/income/sources/unearned.yaml +28 -0
  128. policyengine_us/parameters/gov/states/tx/tanf/minimum_grant.yaml +13 -0
  129. policyengine_us/parameters/gov/states/tx/tanf/needs_standard/budgetary_needs/additional_person.yaml +17 -0
  130. policyengine_us/parameters/gov/states/tx/tanf/needs_standard/budgetary_needs/caretaker_with_second_parent.yaml +81 -0
  131. policyengine_us/parameters/gov/states/tx/tanf/needs_standard/budgetary_needs/caretaker_without_second_parent.yaml +85 -0
  132. policyengine_us/parameters/gov/states/tx/tanf/needs_standard/budgetary_needs/non_caretaker.yaml +85 -0
  133. policyengine_us/parameters/gov/states/tx/tanf/needs_standard/recognizable_needs/additional_person.yaml +17 -0
  134. policyengine_us/parameters/gov/states/tx/tanf/needs_standard/recognizable_needs/rate.yaml +17 -0
  135. policyengine_us/parameters/gov/states/tx/tanf/ottanf/payment_amount.yaml +13 -0
  136. policyengine_us/parameters/gov/states/tx/tanf/payment_standard/additional_person.yaml +19 -0
  137. policyengine_us/parameters/gov/states/tx/tanf/payment_standard/caretaker_with_second_parent.yaml +105 -0
  138. policyengine_us/parameters/gov/states/tx/tanf/payment_standard/caretaker_without_second_parent.yaml +112 -0
  139. policyengine_us/parameters/gov/states/tx/tanf/payment_standard/non_caretaker.yaml +111 -0
  140. policyengine_us/parameters/gov/states/tx/tanf/resources/resource_limit.yaml +13 -0
  141. policyengine_us/parameters/gov/states/tx/tanf/resources/vehicle_exemption.yaml +11 -0
  142. policyengine_us/parameters/gov/states/tx/twc/README.md +1 -0
  143. policyengine_us/parameters/gov/states/tx/twc/ccs/README.md +1 -0
  144. policyengine_us/parameters/gov/states/tx/twc/ccs/age_threshold/child.yaml +11 -0
  145. policyengine_us/parameters/gov/states/tx/twc/ccs/age_threshold/disabled_child.yaml +11 -0
  146. policyengine_us/parameters/gov/states/tx/twc/ccs/age_threshold/infant.yaml +11 -0
  147. policyengine_us/parameters/gov/states/tx/twc/ccs/age_threshold/school_age.yaml +11 -0
  148. policyengine_us/parameters/gov/states/tx/twc/ccs/age_threshold/toddler.yaml +11 -0
  149. policyengine_us/parameters/gov/states/tx/twc/ccs/assets/limit.yaml +11 -0
  150. policyengine_us/parameters/gov/states/tx/twc/ccs/copay/rate/additional_child.yaml +13 -0
  151. policyengine_us/parameters/gov/states/tx/twc/ccs/copay/rate/first_child.yaml +55 -0
  152. policyengine_us/parameters/gov/states/tx/twc/ccs/copay/rate/maximum.yaml +11 -0
  153. policyengine_us/parameters/gov/states/tx/twc/ccs/income/smi_rate.yaml +11 -0
  154. policyengine_us/parameters/gov/states/tx/twc/ccs/income/sources.yaml +23 -0
  155. policyengine_us/parameters/gov/states/tx/twc/ccs/payment/rates.yaml +10459 -0
  156. policyengine_us/parameters/gov/states/tx/twc/ccs/region/alamo.yaml +25 -0
  157. policyengine_us/parameters/gov/states/tx/twc/ccs/region/borderplex.yaml +18 -0
  158. policyengine_us/parameters/gov/states/tx/twc/ccs/region/brazos_valley.yaml +19 -0
  159. policyengine_us/parameters/gov/states/tx/twc/ccs/region/cameron_county.yaml +13 -0
  160. policyengine_us/parameters/gov/states/tx/twc/ccs/region/capital_area.yaml +13 -0
  161. policyengine_us/parameters/gov/states/tx/twc/ccs/region/central_texas.yaml +19 -0
  162. policyengine_us/parameters/gov/states/tx/twc/ccs/region/coastal_bend.yaml +24 -0
  163. policyengine_us/parameters/gov/states/tx/twc/ccs/region/concho_valley.yaml +25 -0
  164. policyengine_us/parameters/gov/states/tx/twc/ccs/region/dallas_county.yaml +13 -0
  165. policyengine_us/parameters/gov/states/tx/twc/ccs/region/deep_east.yaml +24 -0
  166. policyengine_us/parameters/gov/states/tx/twc/ccs/region/east_texas.yaml +26 -0
  167. policyengine_us/parameters/gov/states/tx/twc/ccs/region/golden_crescent.yaml +19 -0
  168. policyengine_us/parameters/gov/states/tx/twc/ccs/region/gulf_coast.yaml +25 -0
  169. policyengine_us/parameters/gov/states/tx/twc/ccs/region/heart_of_texas.yaml +18 -0
  170. policyengine_us/parameters/gov/states/tx/twc/ccs/region/lower_rio.yaml +15 -0
  171. policyengine_us/parameters/gov/states/tx/twc/ccs/region/middle_rio.yaml +21 -0
  172. policyengine_us/parameters/gov/states/tx/twc/ccs/region/north_central.yaml +26 -0
  173. policyengine_us/parameters/gov/states/tx/twc/ccs/region/north_texas.yaml +23 -0
  174. policyengine_us/parameters/gov/states/tx/twc/ccs/region/northeast_texas.yaml +21 -0
  175. policyengine_us/parameters/gov/states/tx/twc/ccs/region/panhandle.yaml +38 -0
  176. policyengine_us/parameters/gov/states/tx/twc/ccs/region/permian_basin.yaml +29 -0
  177. policyengine_us/parameters/gov/states/tx/twc/ccs/region/rural_capital.yaml +21 -0
  178. policyengine_us/parameters/gov/states/tx/twc/ccs/region/south_plains.yaml +27 -0
  179. policyengine_us/parameters/gov/states/tx/twc/ccs/region/south_texas.yaml +15 -0
  180. policyengine_us/parameters/gov/states/tx/twc/ccs/region/southeast.yaml +15 -0
  181. policyengine_us/parameters/gov/states/tx/twc/ccs/region/tarrant_county.yaml +13 -0
  182. policyengine_us/parameters/gov/states/tx/twc/ccs/region/texoma.yaml +15 -0
  183. policyengine_us/parameters/gov/states/tx/twc/ccs/region/west_central.yaml +31 -0
  184. policyengine_us/parameters/gov/states/tx/twc/ccs/work_requirements/single_parent.yaml +11 -0
  185. policyengine_us/parameters/gov/states/tx/twc/ccs/work_requirements/two_parent.yaml +11 -0
  186. policyengine_us/parameters/gov/states/tx/uct/lifeline/fpg_limit.yaml +10 -0
  187. policyengine_us/parameters/gov/states/tx/uct/lifeline/supplement.yaml +10 -0
  188. policyengine_us/parameters/gov/states/va/tax/income/credits/non_refundable.yaml +5 -1
  189. policyengine_us/parameters/gov/states/va/tax/income/rebate/amount.yaml +10 -0
  190. policyengine_us/parameters/gov/territories/pr/tax/income/credits/refundable.yaml +2 -0
  191. policyengine_us/parameters/gov/territories/pr/tax/income/tax_rate/amount.yaml +35 -0
  192. policyengine_us/parameters/gov/usda/snap/work_requirements/general/age_threshold/caring_dependent_child.yaml +1 -1
  193. policyengine_us/parameters/gov/usda/snap/work_requirements/general/age_threshold/exempted.yaml +1 -1
  194. policyengine_us/parameters/gov/usda/snap/work_requirements/general/weekly_hours_threshold.yaml +1 -1
  195. policyengine_us/reforms/aca/aca_ptc_additional_bracket.py +2 -2
  196. policyengine_us/reforms/aca/aca_ptc_simplified_bracket.py +2 -2
  197. policyengine_us/reforms/additional_tax_bracket/additional_tax_bracket_reform.py +10 -7
  198. policyengine_us/reforms/biden/budget_2025/capital_gains_tax_increase.py +5 -7
  199. policyengine_us/reforms/congress/tlaib/__init__.py +5 -0
  200. policyengine_us/reforms/congress/tlaib/economic_dignity_for_all_agenda/__init__.py +9 -0
  201. policyengine_us/reforms/congress/tlaib/economic_dignity_for_all_agenda/edaa_end_child_poverty_act.py +237 -0
  202. policyengine_us/reforms/ctc/ctc_minimum_refundable_amount.py +11 -0
  203. policyengine_us/reforms/ctc/ctc_per_child_phase_out.py +36 -3
  204. policyengine_us/reforms/harris/capital_gains/harris_capital_gains.py +7 -7
  205. policyengine_us/reforms/reforms.py +15 -0
  206. policyengine_us/reforms/states/ri/__init__.py +2 -0
  207. policyengine_us/reforms/states/ri/ctc/__init__.py +1 -0
  208. policyengine_us/reforms/states/ri/ctc/ri_ctc_reform.py +207 -0
  209. policyengine_us/reforms/states/ri/exemption/__init__.py +1 -0
  210. policyengine_us/reforms/states/ri/exemption/ri_exemption_reform.py +167 -0
  211. policyengine_us/tests/policy/baseline/gov/aca/ptc/aca_ptc.yaml +3 -3
  212. policyengine_us/tests/policy/baseline/gov/aca/ptc/aca_required_contribution_percentage.yaml +71 -0
  213. policyengine_us/tests/policy/baseline/gov/aca/ptc/integration.yaml +1 -1
  214. policyengine_us/tests/policy/baseline/gov/aca/ptc/separate_esi.yaml +2 -2
  215. policyengine_us/tests/policy/baseline/gov/ed/pell_grant/pell_grant_simplified_formula_applies.yaml +1 -1
  216. policyengine_us/tests/policy/baseline/gov/fcc/lifeline/is_lifeline_eligible.yaml +10 -0
  217. policyengine_us/tests/policy/baseline/gov/fcc/lifeline/is_lifeline_income_eligible.yaml +47 -0
  218. policyengine_us/tests/policy/baseline/gov/fcc/lifeline/lifeline.yaml +19 -0
  219. policyengine_us/tests/policy/baseline/gov/hhs/tanf/tanf_fpg.yaml +53 -0
  220. policyengine_us/tests/policy/baseline/gov/irs/integration/us_itemize.yaml +1 -1
  221. policyengine_us/tests/policy/baseline/gov/local/tx/harris/in_harris_county_tx.yaml +27 -0
  222. policyengine_us/tests/policy/baseline/gov/local/tx/harris/rides/tx_harris_rides_eligible.yaml +35 -0
  223. policyengine_us/tests/policy/baseline/gov/local/tx/harris/rides/tx_harris_rides_subsidy.yaml +32 -0
  224. policyengine_us/tests/policy/baseline/gov/ssa/ssi/integration_tests.yaml +150 -4
  225. policyengine_us/tests/policy/baseline/gov/states/ca/tax/income/integration.yaml +50 -0
  226. policyengine_us/tests/policy/baseline/gov/states/co/tax/income/credits/care_worker/co_care_worker_credit.yaml +64 -0
  227. policyengine_us/tests/policy/baseline/gov/states/co/tax/income/credits/care_worker/co_care_worker_credit_eligible.yaml +122 -0
  228. policyengine_us/tests/policy/baseline/gov/states/co/tax/income/credits/care_worker/co_care_worker_credit_eligible_care_worker_count.yaml +65 -0
  229. policyengine_us/tests/policy/baseline/gov/states/co/tax/income/credits/co_tabor_cash_back.yaml +71 -0
  230. policyengine_us/tests/policy/baseline/gov/states/co/tax/income/integration.yaml +38 -0
  231. policyengine_us/tests/policy/baseline/gov/states/ga/tax/income/credits/ga_itemizer_credit.yaml +44 -0
  232. policyengine_us/tests/policy/baseline/gov/states/ga/tax/income/integration.yaml +47 -0
  233. policyengine_us/tests/policy/baseline/gov/states/ga/tax/income/subtractions/retirement/ga_retirement_exclusion_countable_earned_income.yaml +17 -0
  234. policyengine_us/tests/policy/baseline/gov/states/hi/tax/income/alternative_tax/hi_alternative_tax_on_capital_gains_eligible.yaml +0 -8
  235. policyengine_us/tests/policy/baseline/gov/states/hi/tax/income/credits/cdcc/hi_cdcc.yaml +4 -0
  236. policyengine_us/tests/policy/baseline/gov/states/hi/tax/income/credits/cdcc/hi_cdcc_eligible.yaml +15 -0
  237. policyengine_us/tests/policy/baseline/gov/states/hi/tax/income/credits/hi_act_115_rebate.yaml +35 -0
  238. policyengine_us/tests/policy/baseline/gov/states/hi/tax/income/integration.yaml +159 -0
  239. policyengine_us/tests/policy/baseline/gov/states/il/tax/income/credits/il_income_tax_rebate.yaml +49 -0
  240. policyengine_us/tests/policy/baseline/gov/states/il/tax/income/credits/il_income_tax_rebate_eligible.yaml +35 -0
  241. policyengine_us/tests/policy/baseline/gov/states/in/tax/income/credits/in_automatic_refund_rebate.yaml +47 -0
  242. policyengine_us/tests/policy/baseline/gov/states/ks/tax/income/ks_fstc.yaml +4 -4
  243. policyengine_us/tests/policy/baseline/gov/states/ks/tax/income/ks_integration.yaml +48 -0
  244. policyengine_us/tests/policy/baseline/gov/states/la/tax/income/credits/cdcc/la_non_refundable_cdcc.yaml +5 -5
  245. policyengine_us/tests/policy/baseline/gov/states/la/tax/income/integration.yaml +58 -0
  246. policyengine_us/tests/policy/baseline/gov/states/ma/dta/tcap/eaedc/dependent_care_deduction/ma_eaedc_dependent_care_deduction.yaml +13 -13
  247. policyengine_us/tests/policy/baseline/gov/states/ma/dta/tcap/eaedc/dependent_care_deduction/ma_eaedc_dependent_care_deduction_person.yaml +8 -8
  248. policyengine_us/tests/policy/baseline/gov/states/ma/dta/tcap/eaedc/ma_eaedc.yaml +2 -2
  249. policyengine_us/tests/policy/baseline/gov/states/ma/dta/tcap/tafdc/income/deductions/ma_tafdc_dependent_care_deduction_person.yaml +6 -6
  250. policyengine_us/tests/policy/baseline/gov/states/ma/dta/tcap/tafdc/income/earned/ma_tafdc_partially_disregarded_earned_income.yaml +7 -7
  251. policyengine_us/tests/policy/baseline/gov/states/ma/dta/tcap/tafdc/integration.yaml +14 -14
  252. policyengine_us/tests/policy/baseline/gov/states/ma/dta/tcap/tafdc/ma_tafdc.yaml +1 -1
  253. policyengine_us/tests/policy/baseline/gov/states/ma/eec/ccfa/copay/ma_ccfa_total_copay.yaml +4 -4
  254. policyengine_us/tests/policy/baseline/gov/states/ma/eec/ccfa/eligibility/ma_ccfa_activity_eligible.yaml +20 -20
  255. policyengine_us/tests/policy/baseline/gov/states/ma/eec/ccfa/ma_ccfa.yaml +7 -7
  256. policyengine_us/tests/policy/baseline/gov/states/ma/tax/income/credits/ma_taxpayer_refund_rebate.yaml +42 -0
  257. policyengine_us/tests/policy/baseline/gov/states/ma/tax/income/integration_ma.yaml +6 -0
  258. policyengine_us/tests/policy/baseline/gov/states/me/tax/income/credits/me_relief_rebate.yaml +26 -0
  259. policyengine_us/tests/policy/baseline/gov/states/me/tax/income/credits/me_relief_rebate_eligible.yaml +35 -0
  260. policyengine_us/tests/policy/baseline/gov/states/mn/tax/income/credits/mn_child_and_working_families_credits_ctc_eligible_child.yaml +26 -0
  261. policyengine_us/tests/policy/baseline/gov/states/mn/tax/income/mn_integration.yaml +55 -0
  262. policyengine_us/tests/policy/baseline/gov/states/mt/tax/income/integration.yaml +3 -0
  263. policyengine_us/tests/policy/baseline/gov/states/nj/tax/income/credits/cdcc/nj_cdcc.yaml +8 -8
  264. policyengine_us/tests/policy/baseline/gov/states/nj/tax/income/integation.yaml +57 -0
  265. policyengine_us/tests/policy/baseline/gov/states/nm/tax/income/integration.yaml +60 -0
  266. policyengine_us/tests/policy/baseline/gov/states/oh/tax/income/credits/oh_cdcc.yaml +4 -4
  267. policyengine_us/tests/policy/baseline/gov/states/oh/tax/income/integration.yaml +59 -0
  268. policyengine_us/tests/policy/baseline/gov/states/pa/tax/income/credits/pa_eitc.yaml +26 -0
  269. policyengine_us/tests/policy/baseline/gov/states/pa/tax/income/forgiveness/pa_tax_forgiveness_rate.yaml +5 -11
  270. policyengine_us/tests/policy/baseline/gov/states/pa/tax/income/integration.yaml +54 -0
  271. policyengine_us/tests/policy/baseline/gov/states/ri/tax/income/integration.yaml +47 -0
  272. policyengine_us/tests/policy/baseline/gov/states/sc/tax/income/credits/sc_2022_rebate.yaml +76 -0
  273. policyengine_us/tests/policy/baseline/gov/states/sc/tax/income/credits/sc_cdcc.yaml +9 -9
  274. policyengine_us/tests/policy/baseline/gov/states/sc/tax/income/integration.yaml +58 -0
  275. policyengine_us/tests/policy/baseline/gov/states/tx/dta/csfp/tx_dta_csfp_income_eligible.yaml +15 -0
  276. policyengine_us/tests/policy/baseline/gov/states/tx/fpp/integration.yaml +133 -0
  277. policyengine_us/tests/policy/baseline/gov/states/tx/fpp/tx_fpp_age_eligible.yaml +39 -0
  278. policyengine_us/tests/policy/baseline/gov/states/tx/fpp/tx_fpp_benefit.yaml +39 -0
  279. policyengine_us/tests/policy/baseline/gov/states/tx/fpp/tx_fpp_income_eligible.yaml +53 -0
  280. policyengine_us/tests/policy/baseline/gov/states/tx/fpp/tx_fpp_income_limit.yaml +44 -0
  281. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/assistance_unit/tx_tanf_age_eligible_child.yaml +34 -0
  282. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/assistance_unit/tx_tanf_assistance_unit_size.yaml +62 -0
  283. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/assistance_unit/tx_tanf_categorically_eligible_person.yaml +49 -0
  284. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/assistance_unit/tx_tanf_eligible_child.yaml +34 -0
  285. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/assistance_unit/tx_tanf_eligible_parent.yaml +38 -0
  286. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/eligibility/tx_tanf_budgetary_needs.yaml +65 -0
  287. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/eligibility/tx_tanf_budgetary_needs_test.yaml +30 -0
  288. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/eligibility/tx_tanf_caretaker_type.yaml +116 -0
  289. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/eligibility/tx_tanf_eligible.yaml +123 -0
  290. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/eligibility/tx_tanf_income_eligible.yaml +69 -0
  291. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/eligibility/tx_tanf_recognizable_needs_test.yaml +54 -0
  292. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/eligibility/tx_tanf_resources_eligible.yaml +44 -0
  293. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/income/deductions/tx_tanf_child_support_deduction.yaml +55 -0
  294. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/income/deductions/tx_tanf_dependent_care_deduction.yaml +54 -0
  295. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/income/earned/tx_tanf_countable_earned_income.yaml +39 -0
  296. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/income/earned/tx_tanf_earned_income_after_disregard_person.yaml +36 -0
  297. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/income/tx_tanf_income_for_budgetary_needs_test.yaml +102 -0
  298. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/income/unearned/tx_tanf_countable_unearned_income.yaml +49 -0
  299. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/integration.yaml +291 -0
  300. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/ottanf/tx_ottanf.yaml +47 -0
  301. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/ottanf/tx_ottanf_crisis_criteria.yaml +17 -0
  302. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/ottanf/tx_ottanf_eligible.yaml +158 -0
  303. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/resources/tx_tanf_countable_resources.yaml +39 -0
  304. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/tx_regular_tanf.yaml +74 -0
  305. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/tx_tanf.yaml +89 -0
  306. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/tx_tanf_payment_standard.yaml +61 -0
  307. policyengine_us/tests/policy/baseline/gov/states/tx/twc/ccs/copay/tx_ccs_copay.yaml +165 -0
  308. policyengine_us/tests/policy/baseline/gov/states/tx/twc/ccs/eligibility/tx_ccs_asset_eligible.yaml +67 -0
  309. policyengine_us/tests/policy/baseline/gov/states/tx/twc/ccs/eligibility/tx_ccs_eligible.yaml +114 -0
  310. policyengine_us/tests/policy/baseline/gov/states/tx/twc/ccs/eligibility/tx_ccs_eligible_child.yaml +172 -0
  311. policyengine_us/tests/policy/baseline/gov/states/tx/twc/ccs/eligibility/tx_ccs_income_eligible.yaml +65 -0
  312. policyengine_us/tests/policy/baseline/gov/states/tx/twc/ccs/eligibility/tx_ccs_work_exempt.yaml +24 -0
  313. policyengine_us/tests/policy/baseline/gov/states/tx/twc/ccs/eligibility/tx_ccs_work_requirement_eligible.yaml +155 -0
  314. policyengine_us/tests/policy/baseline/gov/states/tx/twc/ccs/payment/tx_ccs_payment_rate.yaml +224 -0
  315. policyengine_us/tests/policy/baseline/gov/states/tx/twc/ccs/tx_ccs.yaml +132 -0
  316. policyengine_us/tests/policy/baseline/gov/states/tx/twc/ccs/tx_ccs_child_age_category.yaml +127 -0
  317. policyengine_us/tests/policy/baseline/gov/states/tx/twc/ccs/tx_ccs_maximum_payment.yaml +141 -0
  318. policyengine_us/tests/policy/baseline/gov/states/tx/twc/ccs/tx_ccs_workforce_board_region.yaml +79 -0
  319. policyengine_us/tests/policy/baseline/gov/states/tx/uct/lifeline/integration.yaml +251 -0
  320. policyengine_us/tests/policy/baseline/gov/states/va/tax/income/integration.yaml +2 -0
  321. policyengine_us/tests/policy/baseline/gov/states/wi/tax/income/integration.yaml +48 -0
  322. policyengine_us/tests/policy/baseline/gov/territories/pr/tax/income/pr_normal_tax.yaml +31 -0
  323. policyengine_us/tests/policy/baseline/gov/test_categorical_eligibility_vectorization.yaml +41 -0
  324. policyengine_us/tests/policy/baseline/gov/usda/csfp/commodity_supplemental_food_program_eligible.yaml +171 -0
  325. policyengine_us/tests/policy/baseline/gov/usda/snap/eligibility/student/is_snap_ineligible_student.yaml +2 -2
  326. policyengine_us/tests/policy/baseline/gov/usda/snap/eligibility/work_requirements/meets_snap_abawd_work_requirements.yaml +17 -17
  327. policyengine_us/tests/policy/baseline/gov/usda/snap/eligibility/work_requirements/meets_snap_general_work_requirements.yaml +7 -7
  328. policyengine_us/tests/policy/baseline/gov/usda/snap/income/deductions/self_employment_income/integration.yaml +6 -6
  329. policyengine_us/tests/policy/baseline/gov/usda/snap/income/deductions/self_employment_income/snap_self_employment_expense_deduction.yaml +4 -4
  330. policyengine_us/tests/policy/baseline/gov/usda/snap/income/deductions/self_employment_income/snap_self_employment_income_after_expense_deduction.yaml +1 -1
  331. policyengine_us/tests/policy/baseline/gov/usda/snap/integration.yaml +1 -1
  332. policyengine_us/tests/policy/baseline/gov/usda/snap/snap.yaml +5 -5
  333. policyengine_us/tests/policy/baseline/household/demographic/geographic/in_nyc.yaml +20 -0
  334. policyengine_us/tests/policy/baseline/household/demographic/person/is_citizen_or_legal_immigrant.yaml +55 -0
  335. policyengine_us/tests/policy/contrib/aca/ptc_additional_bracket.yaml +12 -12
  336. policyengine_us/tests/policy/contrib/aca/ptc_simplified_bracket.yaml +24 -24
  337. policyengine_us/tests/policy/contrib/additional_tax_bracket/additional_tax_bracket_reform.yaml +4 -4
  338. policyengine_us/tests/policy/contrib/congress/tlaib/economic_dignity_for_all_agenda/edaa_end_child_poverty_act.yaml +198 -0
  339. policyengine_us/tests/policy/contrib/congress/tlaib/end_child_poverty_act/integration.yaml +0 -42
  340. policyengine_us/tests/policy/contrib/crfb/senior_deduction_extension.yaml +2 -2
  341. policyengine_us/tests/policy/contrib/ctc/integration.yaml +205 -2
  342. policyengine_us/tests/policy/contrib/states/ri/ctc_reform_test.yaml +321 -0
  343. policyengine_us/tests/policy/contrib/states/ri/exemption_reform_test.yaml +117 -0
  344. policyengine_us/variables/gov/aca/ptc/aca_ptc.py +3 -1
  345. policyengine_us/variables/gov/aca/ptc/{aca_ptc_phase_out_rate.py → aca_required_contribution_percentage.py} +2 -2
  346. policyengine_us/variables/gov/ed/pell_grant/efc/pell_grant_simplified_formula_applies.py +1 -2
  347. policyengine_us/variables/gov/fcc/lifeline/is_lifeline_eligible.py +5 -6
  348. policyengine_us/variables/gov/fcc/lifeline/is_lifeline_income_eligible.py +35 -0
  349. policyengine_us/variables/gov/fcc/lifeline/lifeline.py +5 -2
  350. policyengine_us/variables/gov/hhs/head_start/early_head_start.py +2 -1
  351. policyengine_us/variables/gov/hhs/head_start/head_start.py +2 -1
  352. policyengine_us/variables/gov/hhs/head_start/is_head_start_categorically_eligible.py +1 -3
  353. policyengine_us/variables/gov/hhs/tanf/cash/income/tanf_gross_earned_income.py +13 -0
  354. policyengine_us/variables/gov/hhs/tanf/cash/income/tanf_gross_unearned_income.py +13 -0
  355. policyengine_us/variables/gov/hhs/tanf/tanf_fpg.py +28 -0
  356. policyengine_us/variables/gov/irs/tax/federal_income/alternative_minimum_tax/amt_tax_including_cg.py +5 -9
  357. policyengine_us/variables/gov/irs/tax/federal_income/alternative_minimum_tax/regular_tax_before_credits.py +12 -13
  358. policyengine_us/variables/gov/irs/tax/federal_income/capital_gains/capital_gains_excluded_from_taxable_income.py +2 -2
  359. policyengine_us/variables/gov/irs/tax/federal_income/capital_gains/capital_gains_tax.py +5 -5
  360. policyengine_us/variables/gov/irs/tax/federal_income/capital_gains/dwks19.py +2 -2
  361. policyengine_us/variables/gov/local/tx/harris/in_harris_county_tx.py +12 -0
  362. policyengine_us/variables/gov/local/tx/harris/rides/tx_harris_rides_eligible.py +22 -0
  363. policyengine_us/variables/gov/local/tx/harris/rides/tx_harris_rides_subsidy.py +26 -0
  364. policyengine_us/variables/gov/ssa/ssi/eligibility/income/deemed/from_ineligible_spouse/is_ssi_spousal_deeming_applies.py +41 -0
  365. policyengine_us/variables/gov/ssa/ssi/eligibility/income/deemed/from_ineligible_spouse/ssi_income_deemed_from_ineligible_spouse.py +20 -20
  366. policyengine_us/variables/gov/ssa/ssi/ssi.py +22 -1
  367. policyengine_us/variables/gov/ssa/ssi/ssi_amount_if_eligible.py +26 -4
  368. policyengine_us/variables/gov/states/ca/cpuc/care/eligibility/ca_care_categorically_eligible.py +2 -2
  369. policyengine_us/variables/gov/states/co/tax/income/credits/care_worker/co_care_worker_credit.py +26 -0
  370. policyengine_us/variables/gov/states/co/tax/income/credits/care_worker/co_care_worker_credit_eligible.py +27 -0
  371. policyengine_us/variables/gov/states/co/tax/income/credits/care_worker/co_care_worker_credit_eligible_care_worker.py +10 -0
  372. policyengine_us/variables/gov/states/co/tax/income/credits/care_worker/co_care_worker_credit_eligible_care_worker_count.py +18 -0
  373. policyengine_us/variables/gov/states/co/tax/income/credits/co_tabor_cash_back.py +17 -0
  374. policyengine_us/variables/gov/states/ga/tax/income/credits/ga_itemizer_credit.py +19 -0
  375. policyengine_us/variables/gov/states/ga/tax/income/subtractions/retirement/ga_retirement_exclusion_countable_earned_income.py +5 -2
  376. policyengine_us/variables/gov/states/hi/tax/income/credits/cdcc/hi_cdcc.py +1 -1
  377. policyengine_us/variables/gov/states/hi/tax/income/credits/cdcc/hi_cdcc_eligible.py +14 -0
  378. policyengine_us/variables/gov/states/hi/tax/income/credits/hi_act_115_rebate.py +32 -0
  379. policyengine_us/variables/gov/states/il/tax/income/credits/il_income_tax_rebate.py +27 -0
  380. policyengine_us/variables/gov/states/il/tax/income/credits/il_income_tax_rebate_eligible.py +24 -0
  381. policyengine_us/variables/gov/states/in/tax/income/credits/in_automatic_refund_rebate.py +26 -0
  382. policyengine_us/variables/gov/states/ks/tax/income/credits/ks_fstc.py +1 -1
  383. policyengine_us/variables/gov/states/la/tax/income/credits/cdcc/la_non_refundable_cdcc.py +1 -1
  384. policyengine_us/variables/gov/states/ma/dta/tcap/eaedc/dependent_care_deduction/ma_eaedc_dependent_care_deduction_person.py +1 -1
  385. policyengine_us/variables/gov/states/ma/dta/tcap/tafdc/income/deductions/ma_tafdc_dependent_care_deduction_person.py +1 -1
  386. policyengine_us/variables/gov/states/ma/eec/ccfa/eligibility/ma_ccfa_activity_eligible.py +3 -1
  387. policyengine_us/variables/gov/states/ma/tax/income/credits/ma_taxpayer_refund_rebate.py +29 -0
  388. policyengine_us/variables/gov/states/me/tax/income/credits/me_relief_rebate.py +16 -0
  389. policyengine_us/variables/gov/states/me/tax/income/credits/me_relief_rebate_eligible.py +17 -0
  390. policyengine_us/variables/gov/states/mn/tax/income/credits/mn_child_and_working_families_credits.py +5 -1
  391. policyengine_us/variables/gov/states/mn/tax/income/credits/mn_child_and_working_families_credits_ctc_eligible_child.py +24 -0
  392. policyengine_us/variables/gov/states/mt/tax/income/credits/rebate/mt_income_tax_rebate.py +1 -2
  393. policyengine_us/variables/gov/states/nj/tax/income/credits/cdcc/nj_cdcc.py +2 -2
  394. policyengine_us/variables/gov/states/oh/tax/income/credits/oh_cdcc.py +2 -2
  395. policyengine_us/variables/gov/states/pa/tax/income/credits/pa_eitc.py +16 -0
  396. policyengine_us/variables/gov/states/pa/tax/income/forgiveness/pa_tax_forgiveness_rate.py +1 -3
  397. policyengine_us/variables/gov/states/sc/tax/income/credits/cdcc/sc_cdcc.py +1 -1
  398. policyengine_us/variables/gov/states/sc/tax/income/credits/sc_2022_rebate.py +29 -0
  399. policyengine_us/variables/gov/states/tx/dta/csfp/tx_dta_csfp_income_eligible.py +14 -0
  400. policyengine_us/variables/gov/states/tx/fpp/tx_fpp_age_eligible.py +16 -0
  401. policyengine_us/variables/gov/states/tx/fpp/tx_fpp_benefit.py +15 -0
  402. policyengine_us/variables/gov/states/tx/fpp/tx_fpp_eligible.py +18 -0
  403. policyengine_us/variables/gov/states/tx/fpp/tx_fpp_income_eligible.py +18 -0
  404. policyengine_us/variables/gov/states/tx/fpp/tx_fpp_income_limit.py +24 -0
  405. policyengine_us/variables/gov/states/tx/tanf/assistance_unit/tx_tanf_age_eligible_child.py +27 -0
  406. policyengine_us/variables/gov/states/tx/tanf/assistance_unit/tx_tanf_assistance_unit_size.py +18 -0
  407. policyengine_us/variables/gov/states/tx/tanf/assistance_unit/tx_tanf_categorically_eligible_person.py +19 -0
  408. policyengine_us/variables/gov/states/tx/tanf/assistance_unit/tx_tanf_eligible_child.py +24 -0
  409. policyengine_us/variables/gov/states/tx/tanf/assistance_unit/tx_tanf_eligible_parent.py +24 -0
  410. policyengine_us/variables/gov/states/tx/tanf/eligibility/tx_tanf_budgetary_needs.py +57 -0
  411. policyengine_us/variables/gov/states/tx/tanf/eligibility/tx_tanf_budgetary_needs_test.py +21 -0
  412. policyengine_us/variables/gov/states/tx/tanf/eligibility/tx_tanf_caretaker_type.py +50 -0
  413. policyengine_us/variables/gov/states/tx/tanf/eligibility/tx_tanf_eligible.py +29 -0
  414. policyengine_us/variables/gov/states/tx/tanf/eligibility/tx_tanf_income_eligible.py +40 -0
  415. policyengine_us/variables/gov/states/tx/tanf/eligibility/tx_tanf_recognizable_needs_test.py +23 -0
  416. policyengine_us/variables/gov/states/tx/tanf/eligibility/tx_tanf_resources_eligible.py +19 -0
  417. policyengine_us/variables/gov/states/tx/tanf/income/deductions/tx_tanf_child_support_deduction.py +21 -0
  418. policyengine_us/variables/gov/states/tx/tanf/income/deductions/tx_tanf_dependent_care_deduction.py +39 -0
  419. policyengine_us/variables/gov/states/tx/tanf/income/earned/tx_tanf_countable_earned_income.py +28 -0
  420. policyengine_us/variables/gov/states/tx/tanf/income/earned/tx_tanf_earned_income_after_disregard_person.py +52 -0
  421. policyengine_us/variables/gov/states/tx/tanf/income/earned/tx_tanf_gross_earned_income.py +16 -0
  422. policyengine_us/variables/gov/states/tx/tanf/income/tx_tanf_countable_income.py +19 -0
  423. policyengine_us/variables/gov/states/tx/tanf/income/tx_tanf_income_for_budgetary_needs_test.py +47 -0
  424. policyengine_us/variables/gov/states/tx/tanf/income/unearned/tx_tanf_countable_unearned_income.py +27 -0
  425. policyengine_us/variables/gov/states/tx/tanf/income/unearned/tx_tanf_gross_unearned_income.py +16 -0
  426. policyengine_us/variables/gov/states/tx/tanf/ottanf/tx_ottanf.py +17 -0
  427. policyengine_us/variables/gov/states/tx/tanf/ottanf/tx_ottanf_crisis_criteria.py +21 -0
  428. policyengine_us/variables/gov/states/tx/tanf/ottanf/tx_ottanf_eligible.py +36 -0
  429. policyengine_us/variables/gov/states/tx/tanf/resources/tx_tanf_countable_resources.py +31 -0
  430. policyengine_us/variables/gov/states/tx/tanf/tx_regular_tanf.py +27 -0
  431. policyengine_us/variables/gov/states/tx/tanf/tx_tanf.py +25 -0
  432. policyengine_us/variables/gov/states/tx/tanf/tx_tanf_payment_standard.py +51 -0
  433. policyengine_us/variables/gov/states/tx/twc/ccs/copay/tx_ccs_copay.py +40 -0
  434. policyengine_us/variables/gov/states/tx/twc/ccs/eligibility/tx_ccs_asset_eligible.py +16 -0
  435. policyengine_us/variables/gov/states/tx/twc/ccs/eligibility/tx_ccs_eligible.py +28 -0
  436. policyengine_us/variables/gov/states/tx/twc/ccs/eligibility/tx_ccs_eligible_child.py +22 -0
  437. policyengine_us/variables/gov/states/tx/twc/ccs/eligibility/tx_ccs_income_eligible.py +19 -0
  438. policyengine_us/variables/gov/states/tx/twc/ccs/eligibility/tx_ccs_work_exempt.py +26 -0
  439. policyengine_us/variables/gov/states/tx/twc/ccs/eligibility/tx_ccs_work_requirement_eligible.py +44 -0
  440. policyengine_us/variables/gov/states/tx/twc/ccs/payment/tx_ccs_care_schedule.py +18 -0
  441. policyengine_us/variables/gov/states/tx/twc/ccs/payment/tx_ccs_payment_rate.py +36 -0
  442. policyengine_us/variables/gov/states/tx/twc/ccs/payment/tx_ccs_provider_rating.py +21 -0
  443. policyengine_us/variables/gov/states/tx/twc/ccs/payment/tx_ccs_provider_type.py +19 -0
  444. policyengine_us/variables/gov/states/tx/twc/ccs/tx_ccs.py +21 -0
  445. policyengine_us/variables/gov/states/tx/twc/ccs/tx_ccs_child_age_category.py +41 -0
  446. policyengine_us/variables/gov/states/tx/twc/ccs/tx_ccs_countable_income.py +13 -0
  447. policyengine_us/variables/gov/states/tx/twc/ccs/tx_ccs_maximum_payment.py +15 -0
  448. policyengine_us/variables/gov/states/tx/twc/ccs/tx_ccs_workforce_board_region.py +68 -0
  449. policyengine_us/variables/gov/states/tx/uct/lifeline/tx_lifeline_supplement.py +13 -0
  450. policyengine_us/variables/gov/states/wi/tax/income/credits/married_couple/wi_married_couple_credit.py +7 -5
  451. policyengine_us/variables/gov/territories/pr/tax/income/pr_income_tax.py +14 -0
  452. policyengine_us/variables/gov/territories/pr/tax/income/pr_normal_tax.py +16 -0
  453. policyengine_us/variables/gov/territories/pr/tax/income/pr_regular_tax_before_credits.py +11 -0
  454. policyengine_us/variables/gov/territories/pr/tax/income/taxable_income/pr_net_taxable_income.py +11 -0
  455. policyengine_us/variables/gov/usda/csfp/commodity_supplemental_food_program_eligible.py +7 -2
  456. policyengine_us/variables/gov/usda/snap/eligibility/student/is_snap_ineligible_student.py +1 -1
  457. policyengine_us/variables/gov/usda/snap/eligibility/work_requirements/meets_snap_abawd_work_requirements.py +3 -1
  458. policyengine_us/variables/gov/usda/snap/eligibility/work_requirements/meets_snap_general_work_requirements.py +3 -1
  459. policyengine_us/variables/gov/usda/snap/income/deductions/self_employment/snap_self_employment_expense_deduction.py +1 -1
  460. policyengine_us/variables/gov/usda/snap/income/deductions/self_employment/snap_self_employment_income_after_expense_deduction.py +1 -1
  461. policyengine_us/variables/gov/usda/snap/income/deductions/snap_dependent_care_deduction.py +5 -1
  462. policyengine_us/variables/household/demographic/geographic/in_nyc.py +12 -3
  463. policyengine_us/variables/household/demographic/person/is_citizen_or_legal_immigrant.py +22 -0
  464. policyengine_us/variables/household/expense/person/pre_subsidy_transportation_expense.py +9 -0
  465. {policyengine_us-1.413.0.dist-info → policyengine_us-1.439.0.dist-info}/METADATA +1 -1
  466. {policyengine_us-1.413.0.dist-info → policyengine_us-1.439.0.dist-info}/RECORD +471 -182
  467. policyengine_us/parameters/gov/contrib/harris/capital_gains/brackets.yaml +0 -194
  468. policyengine_us/parameters/gov/irs/capital_gains/brackets.yaml +0 -188
  469. policyengine_us/parameters/gov/states/tx/index.yaml +0 -4
  470. policyengine_us/parameters/gov/states/tx/tanf/monthly_income_limit.yaml +0 -31
  471. policyengine_us/tests/policy/baseline/gov/aca/ptc/aca_ptc_phase_out_rate.yaml +0 -71
  472. policyengine_us/tests/policy/baseline/gov/states/hi/tax/income/credits/hi_low_income_household_renters/integration.yaml +0 -61
  473. policyengine_us/tests/policy/baseline/gov/states/ri/tax/income/agi/subtractions/taxable_retirement_income/integration.yaml +0 -45
  474. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/tx_tanf_income_limit.yaml +0 -17
  475. policyengine_us/variables/gov/states/tx/tanf/tx_tanf_income_limit.py +0 -18
  476. /policyengine_us/parameters/gov/aca/{ptc_phase_out_rate.yaml → required_contribution_percentage.yaml} +0 -0
  477. /policyengine_us/variables/gov/states/oh/tax/income/{oh_modifed_agi.py → oh_modified_agi.py} +0 -0
  478. {policyengine_us-1.413.0.dist-info → policyengine_us-1.439.0.dist-info}/WHEEL +0 -0
  479. {policyengine_us-1.413.0.dist-info → policyengine_us-1.439.0.dist-info}/entry_points.txt +0 -0
  480. {policyengine_us-1.413.0.dist-info → policyengine_us-1.439.0.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,36 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class tx_ottanf_eligible(Variable):
5
+ value_type = bool
6
+ entity = SPMUnit
7
+ label = "Eligible for Texas One-Time TANF (OTTANF)"
8
+ definition_period = MONTH
9
+ reference = (
10
+ "https://www.hhs.texas.gov/handbooks/texas-works-handbook/a-2421-eligibility-criteria",
11
+ "https://www.law.cornell.edu/regulations/texas/1-Tex-Admin-Code-SS-372-801",
12
+ )
13
+ defined_for = StateCode.TX
14
+
15
+ def formula(spm_unit, period, parameters):
16
+ # OTTANF eligibility per A-2421:
17
+ # 1. Must meet all regular TANF eligibility requirements
18
+ # (child, income, resources, immigration)
19
+ # 2. Must be eligible for TANF grant of $10 or more
20
+ # 3. Must meet one of four crisis criteria
21
+
22
+ # Regular TANF eligibility (child, income, resources, immigration)
23
+ regular_tanf_eligible = spm_unit("tx_tanf_eligible", period)
24
+
25
+ # Must be eligible for at least $10 grant
26
+ payment_standard = spm_unit("tx_tanf_payment_standard", period)
27
+ countable_income = spm_unit("tx_tanf_countable_income", period)
28
+ potential_grant = payment_standard - countable_income
29
+
30
+ p = parameters(period).gov.states.tx.tanf
31
+ eligible_for_min_grant = potential_grant >= p.minimum_grant
32
+
33
+ # Crisis criteria (user input)
34
+ crisis = spm_unit("tx_ottanf_crisis_criteria", period)
35
+
36
+ return regular_tanf_eligible & eligible_for_min_grant & crisis
@@ -0,0 +1,31 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class tx_tanf_countable_resources(Variable):
5
+ value_type = float
6
+ entity = SPMUnit
7
+ label = "Texas TANF countable resources"
8
+ unit = USD
9
+ definition_period = MONTH
10
+ reference = (
11
+ "https://www.hhs.texas.gov/handbooks/texas-works-handbook/a-1210-general-policy",
12
+ "https://www.hhs.texas.gov/handbooks/texas-works-handbook/a-1220-limits",
13
+ )
14
+ defined_for = StateCode.TX
15
+
16
+ def formula(spm_unit, period, parameters):
17
+ # Countable resources = liquid resources + excess vehicle value
18
+ # Household must have countable resources ≤ $1,000 to be eligible
19
+
20
+ # Liquid resources (cash, checking, savings) - stocks use period.this_year
21
+ cash_assets = spm_unit("spm_unit_cash_assets", period.this_year)
22
+
23
+ # Vehicle resources (apply vehicle exemption: one automobile up to $4,650)
24
+ vehicle_value = spm_unit.household(
25
+ "household_vehicles_value", period.this_year
26
+ )
27
+ p = parameters(period).gov.states.tx.tanf.resources
28
+ countable_vehicle_value = max_(vehicle_value - p.vehicle_exemption, 0)
29
+
30
+ # Total countable resources (no period conversion - resources are stocks)
31
+ return cash_assets + countable_vehicle_value
@@ -0,0 +1,27 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class tx_regular_tanf(Variable):
5
+ value_type = float
6
+ entity = SPMUnit
7
+ label = (
8
+ "Texas Temporary Assistance for Needy Families (TANF) regular benefit"
9
+ )
10
+ unit = USD
11
+ definition_period = MONTH
12
+ reference = (
13
+ "https://www.hhs.texas.gov/handbooks/texas-works-handbook/a-1340-income-limits",
14
+ "https://www.hhs.texas.gov/handbooks/texas-works-handbook/c-110-tanf",
15
+ )
16
+ defined_for = "tx_tanf_eligible"
17
+
18
+ def formula(spm_unit, period, parameters):
19
+ payment_standard = spm_unit("tx_tanf_payment_standard", period)
20
+ countable_income = spm_unit("tx_tanf_countable_income", period)
21
+ p = parameters(period).gov.states.tx.tanf
22
+
23
+ # Calculate benefit as payment standard minus countable income
24
+ calculated_benefit = max_(payment_standard - countable_income, 0)
25
+
26
+ # Apply minimum grant rule
27
+ return max_(calculated_benefit, p.minimum_grant)
@@ -0,0 +1,25 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class tx_tanf(Variable):
5
+ value_type = float
6
+ entity = SPMUnit
7
+ label = "Texas Temporary Assistance for Needy Families (TANF)"
8
+ unit = USD
9
+ definition_period = MONTH
10
+ reference = (
11
+ "https://www.hhs.texas.gov/handbooks/texas-works-handbook/a-2410-general-policy",
12
+ )
13
+ defined_for = StateCode.TX
14
+
15
+ def formula(spm_unit, period, parameters):
16
+ # Compare monthly TANF benefit with monthly equivalent of OTTANF
17
+ # Return whichever is higher for the household
18
+
19
+ # Regular TANF: monthly benefit
20
+ regular_tanf = spm_unit("tx_regular_tanf", period)
21
+
22
+ # OTTANF: one-time payment divided by 12 for monthly equivalent
23
+ ottanf = spm_unit("tx_ottanf", period)
24
+
25
+ return max_(regular_tanf, ottanf)
@@ -0,0 +1,51 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class tx_tanf_payment_standard(Variable):
5
+ value_type = float
6
+ entity = SPMUnit
7
+ label = "Texas TANF payment standard"
8
+ unit = USD
9
+ definition_period = MONTH
10
+ reference = (
11
+ "https://www.hhs.texas.gov/handbooks/texas-works-handbook/c-110-tanf"
12
+ )
13
+ defined_for = StateCode.TX
14
+
15
+ def formula(spm_unit, period, parameters):
16
+ # Payment standard (maximum benefit amount) varies by household size and caretaker type
17
+
18
+ size = spm_unit("tx_tanf_assistance_unit_size", period)
19
+ caretaker_type = spm_unit("tx_tanf_caretaker_type", period)
20
+ p = parameters(period).gov.states.tx.tanf.payment_standard
21
+
22
+ # Determine caretaker type
23
+ non_caretaker = (
24
+ caretaker_type == caretaker_type.possible_values.NON_CARETAKER
25
+ )
26
+ caretaker_without_second = (
27
+ caretaker_type
28
+ == caretaker_type.possible_values.CARETAKER_WITHOUT_SECOND_PARENT
29
+ )
30
+ caretaker_with_second = (
31
+ caretaker_type
32
+ == caretaker_type.possible_values.CARETAKER_WITH_SECOND_PARENT
33
+ )
34
+
35
+ # For sizes <= 15, use table; for sizes > 15, use size 15 + increment
36
+ size_capped = min_(size, 15)
37
+ additional_people = max_(size - 15, 0)
38
+ additional_amount = additional_people * p.additional_person
39
+
40
+ # Get base amount for size (capped at 15)
41
+ base_amount = select(
42
+ [non_caretaker, caretaker_without_second, caretaker_with_second],
43
+ [
44
+ p.non_caretaker.calc(size_capped),
45
+ p.caretaker_without_second_parent.calc(size_capped),
46
+ p.caretaker_with_second_parent.calc(size_capped),
47
+ ],
48
+ default=0,
49
+ )
50
+
51
+ return base_amount + additional_amount
@@ -0,0 +1,40 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class tx_ccs_copay(Variable):
5
+ value_type = float
6
+ entity = SPMUnit
7
+ unit = USD
8
+ label = "Texas Child Care Services (CCS) copayment"
9
+ definition_period = MONTH
10
+ reference = "https://wspanhandle.com/child-care/for-parents/"
11
+ defined_for = "tx_ccs_eligible"
12
+
13
+ def formula(spm_unit, period, parameters):
14
+ p = parameters(period).gov.states.tx.twc.ccs.copay
15
+
16
+ # Get household income and SMI ratio
17
+ income = spm_unit("tx_ccs_countable_income", period)
18
+ smi = spm_unit("hhs_smi", period)
19
+ income_to_smi_ratio = income / smi
20
+
21
+ # Count eligible children in care
22
+ eligible_children = spm_unit.sum(
23
+ spm_unit.members("tx_ccs_eligible_child", period)
24
+ )
25
+
26
+ # Calculate copayment rates based on income bracket
27
+ # Use Panhandle Region's values
28
+ first_child_rate = p.rate.first_child.calc(income_to_smi_ratio)
29
+ additional_child_rate = p.rate.additional_child
30
+
31
+ # Calculate copayments as percentage of income
32
+ first_child_copay = first_child_rate * income
33
+ additional_children = max_(eligible_children - 1, 0)
34
+ additional_copay = additional_child_rate * income * additional_children
35
+
36
+ # Total copayment, capped at maximum rate
37
+ total_copay = first_child_copay + additional_copay
38
+ max_copay = p.rate.maximum * income
39
+
40
+ return min_(total_copay, max_copay)
@@ -0,0 +1,16 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class tx_ccs_asset_eligible(Variable):
5
+ value_type = bool
6
+ entity = SPMUnit
7
+ label = "Texas CCS asset eligible"
8
+ definition_period = MONTH
9
+ reference = "https://www.law.cornell.edu/regulations/texas/40-Tex-Admin-Code-SS-809-41"
10
+ defined_for = StateCode.TX
11
+
12
+ def formula(spm_unit, period, parameters):
13
+ p = parameters(period).gov.states.tx.twc.ccs
14
+ assets = spm_unit("spm_unit_assets", period.this_year)
15
+ asset_limit = p.assets.limit
16
+ return assets <= asset_limit
@@ -0,0 +1,28 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class tx_ccs_eligible(Variable):
5
+ value_type = bool
6
+ entity = SPMUnit
7
+ label = "Texas CCS eligible"
8
+ definition_period = MONTH
9
+ reference = "https://www.law.cornell.edu/regulations/texas/40-Tex-Admin-Code-SS-809-41"
10
+ defined_for = StateCode.TX
11
+
12
+ def formula(spm_unit, period, parameters):
13
+ # Check all eligibility criteria
14
+ income_eligible = spm_unit("tx_ccs_income_eligible", period)
15
+ asset_eligible = spm_unit("tx_ccs_asset_eligible", period)
16
+ work_eligible = spm_unit("tx_ccs_work_requirement_eligible", period)
17
+
18
+ # Check if at least one child is age-eligible
19
+ person = spm_unit.members
20
+ age_eligible = person("tx_ccs_eligible_child", period)
21
+ has_eligible_child = spm_unit.any(age_eligible)
22
+
23
+ return (
24
+ income_eligible
25
+ & asset_eligible
26
+ & work_eligible
27
+ & has_eligible_child
28
+ )
@@ -0,0 +1,22 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class tx_ccs_eligible_child(Variable):
5
+ value_type = bool
6
+ entity = Person
7
+ label = "Texas CCS eligible child"
8
+ definition_period = MONTH
9
+ reference = "https://www.law.cornell.edu/regulations/texas/40-Tex-Admin-Code-SS-809-41"
10
+ defined_for = StateCode.TX
11
+
12
+ def formula(person, period, parameters):
13
+ p = parameters(period).gov.states.tx.twc.ccs.age_threshold
14
+ age = person("age", period.this_year)
15
+ is_disabled = person("is_disabled", period)
16
+ age_limit = where(is_disabled, p.disabled_child, p.child)
17
+ age_eligible = age < age_limit
18
+ is_dependent = person("is_tax_unit_dependent", period)
19
+ immigration_status_eligible = person(
20
+ "is_citizen_or_legal_immigrant", period
21
+ )
22
+ return age_eligible & is_dependent & immigration_status_eligible
@@ -0,0 +1,19 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class tx_ccs_income_eligible(Variable):
5
+ value_type = bool
6
+ entity = SPMUnit
7
+ label = "Texas CCS income eligible"
8
+ definition_period = MONTH
9
+ reference = "https://www.law.cornell.edu/regulations/texas/40-Tex-Admin-Code-SS-809-41"
10
+ defined_for = StateCode.TX
11
+
12
+ def formula(spm_unit, period, parameters):
13
+ p = parameters(period).gov.states.tx.twc.ccs
14
+ # Get monthly countable income
15
+ monthly_income = spm_unit("tx_ccs_countable_income", period)
16
+ # Calculate monthly SMI limit
17
+ smi = spm_unit("hhs_smi", period)
18
+ income_limit = smi * p.income.smi_rate
19
+ return monthly_income <= income_limit
@@ -0,0 +1,26 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class tx_ccs_work_exempt(Variable):
5
+ value_type = bool
6
+ entity = Person
7
+ label = "Texas CCS work requirement exempt"
8
+ definition_period = YEAR
9
+ reference = "https://www.law.cornell.edu/regulations/texas/40-Tex-Admin-Code-SS-809-50"
10
+ defined_for = StateCode.TX
11
+
12
+ def formula(person, period):
13
+ # Exemption 1: Full-time student
14
+ is_full_time_student = person("is_full_time_student", period)
15
+
16
+ # Exemption 2: Parent with documented medical disability
17
+ is_disabled = person("is_disabled", period)
18
+
19
+ # Exemption 3: Parent caring for a physically or mentally disabled family member
20
+ # This exemption is NOT implemented due to complexity in determining:
21
+ # - Which parent is the designated caregiver
22
+ # - Whether caring for disabled spouse vs disabled child has different implications
23
+ # - Whether both parents can claim exemption or just one
24
+ # Future enhancement could add this with better data on caregiving roles
25
+
26
+ return is_full_time_student | is_disabled
@@ -0,0 +1,44 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class tx_ccs_work_requirement_eligible(Variable):
5
+ value_type = bool
6
+ entity = SPMUnit
7
+ label = "Texas CCS work requirement eligible"
8
+ definition_period = MONTH
9
+ reference = "https://www.law.cornell.edu/regulations/texas/40-Tex-Admin-Code-SS-809-56"
10
+ defined_for = StateCode.TX
11
+
12
+ def formula(spm_unit, period, parameters):
13
+ p = parameters(period).gov.states.tx.twc.ccs.work_requirements
14
+
15
+ person = spm_unit.members
16
+ is_head_or_spouse = person("is_tax_unit_head_or_spouse", period)
17
+ is_exempt = person("tx_ccs_work_exempt", period)
18
+ work_hours = person("weekly_hours_worked", period.this_year)
19
+
20
+ # Count non-exempt parents and calculate their total work hours
21
+ is_non_exempt_parent = is_head_or_spouse & ~is_exempt
22
+ num_non_exempt_parents = spm_unit.sum(is_non_exempt_parent)
23
+ total_work_hours = spm_unit.sum(
24
+ where(is_non_exempt_parent, work_hours, 0)
25
+ )
26
+
27
+ # Determine work hours requirement based on non-exempt parents
28
+ # If 0-1 non-exempt parents: 25 hours
29
+ # If 2+ non-exempt parents: 50 hours
30
+ requirement = where(
31
+ num_non_exempt_parents > 1, p.two_parent, p.single_parent
32
+ )
33
+
34
+ # Check each parent individually
35
+ # A parent meets requirements if they are:
36
+ # - Exempt from work, OR
37
+ # - Part of a household that meets the work hour requirement
38
+ household_meets_work_requirement = total_work_hours >= requirement
39
+ parent_meets_requirement = is_exempt | household_meets_work_requirement
40
+
41
+ # SPM unit is eligible if ALL parents meet requirements
42
+ # (Non-parents automatically pass)
43
+ person_eligible = parent_meets_requirement | ~is_head_or_spouse
44
+ return spm_unit.all(person_eligible)
@@ -0,0 +1,18 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class TXCCSCareSchedule(Enum):
5
+ FULL_TIME = "Full Time"
6
+ PART_TIME = "Part Time"
7
+ BLENDED = "Blended"
8
+
9
+
10
+ class tx_ccs_care_schedule(Variable):
11
+ value_type = Enum
12
+ possible_values = TXCCSCareSchedule
13
+ default_value = TXCCSCareSchedule.FULL_TIME
14
+ entity = Person
15
+ definition_period = MONTH
16
+ label = "Texas Child Care Services (CCS) care schedule"
17
+ defined_for = StateCode.TX
18
+ reference = "https://www.twc.texas.gov/sites/default/files/ccel/docs/bcy25-board-max-provider-payment-rates-4-age-groups-twc.pdf"
@@ -0,0 +1,36 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class tx_ccs_payment_rate(Variable):
5
+ value_type = float
6
+ entity = Person
7
+ label = "Texas Child Care Services (CCS) payment amount"
8
+ unit = USD
9
+ definition_period = MONTH
10
+ defined_for = "tx_ccs_eligible_child"
11
+ reference = "https://www.twc.texas.gov/sites/default/files/ccel/docs/bcy25-board-max-provider-payment-rates-4-age-groups-twc.pdf#page=9"
12
+
13
+ def formula(person, period, parameters):
14
+ # Get the household's workforce board region
15
+ household = person.household
16
+ region = household("tx_ccs_workforce_board_region", period)
17
+
18
+ # Get the payment parameters
19
+ p = parameters(period).gov.states.tx.twc.ccs.payment
20
+
21
+ # Get the provider characteristics
22
+ provider_type = person("tx_ccs_provider_type", period)
23
+ provider_rating = person("tx_ccs_provider_rating", period)
24
+ age_category = person("tx_ccs_child_age_category", period)
25
+ care_schedule = person("tx_ccs_care_schedule", period)
26
+
27
+ # Calculate monthly payment based on region-specific rates
28
+ attending_days_per_month = person(
29
+ "childcare_attending_days_per_month", period.this_year
30
+ )
31
+ return (
32
+ p.rates[region][provider_type][provider_rating][age_category][
33
+ care_schedule
34
+ ]
35
+ * attending_days_per_month
36
+ )
@@ -0,0 +1,21 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class TXCCSProviderRating(Enum):
5
+ REG = "Regular"
6
+ TRS2 = "Texas Rising Star 2"
7
+ TRS3 = "Texas Rising Star 3"
8
+ TRS4 = "Texas Rising Star 4"
9
+ TSR = "Texas School Ready"
10
+ NONE = "None"
11
+
12
+
13
+ class tx_ccs_provider_rating(Variable):
14
+ value_type = Enum
15
+ possible_values = TXCCSProviderRating
16
+ default_value = TXCCSProviderRating.REG
17
+ entity = Person
18
+ definition_period = MONTH
19
+ label = "Texas Child Care Services (CCS) provider rating"
20
+ defined_for = StateCode.TX
21
+ reference = "https://www.twc.texas.gov/sites/default/files/ccel/docs/bcy25-board-max-provider-payment-rates-4-age-groups-twc.pdf"
@@ -0,0 +1,19 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class TXCCSProviderType(Enum):
5
+ LCCC = "Licensed Child Care Center"
6
+ LCCH = "Licensed Child Care Home"
7
+ RCCH = "Registered Child Care Home"
8
+ RELATIVE = "Relative Care"
9
+
10
+
11
+ class tx_ccs_provider_type(Variable):
12
+ value_type = Enum
13
+ possible_values = TXCCSProviderType
14
+ default_value = TXCCSProviderType.LCCC
15
+ entity = Person
16
+ definition_period = MONTH
17
+ label = "Texas Child Care Services (CCS) provider type"
18
+ defined_for = StateCode.TX
19
+ reference = "https://www.twc.texas.gov/sites/default/files/ccel/docs/bcy25-board-max-provider-payment-rates-4-age-groups-twc.pdf"
@@ -0,0 +1,21 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class tx_ccs(Variable):
5
+ value_type = float
6
+ entity = SPMUnit
7
+ unit = USD
8
+ label = "Texas Child Care Services (CC) program benefit amount"
9
+ definition_period = MONTH
10
+ defined_for = "tx_ccs_eligible"
11
+
12
+ def formula(spm_unit, period, parameters):
13
+ copay = spm_unit("tx_ccs_copay", period)
14
+ maximum_payment = add(spm_unit, period, ["tx_ccs_payment_rate"])
15
+ pre_subsidy_childcare_expense = spm_unit(
16
+ "spm_unit_pre_subsidy_childcare_expenses", period
17
+ )
18
+ uncapped_subsidy_amount = max_(
19
+ pre_subsidy_childcare_expense - copay, 0
20
+ )
21
+ return min_(uncapped_subsidy_amount, maximum_payment)
@@ -0,0 +1,41 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class TexasCCSChildAgeCategory(Enum):
5
+ INFANT = "Infant"
6
+ TODDLER = "Toddler"
7
+ PRESCHOOL = "Preschool"
8
+ SCHOOL_AGE = "School Age"
9
+
10
+
11
+ class tx_ccs_child_age_category(Variable):
12
+ value_type = Enum
13
+ entity = Person
14
+ possible_values = TexasCCSChildAgeCategory
15
+ default_value = TexasCCSChildAgeCategory.INFANT
16
+ definition_period = MONTH
17
+ defined_for = StateCode.TX
18
+ label = "Texas Child Care Services (CCS) child age category"
19
+ reference = (
20
+ "https://regulations.justia.com/states/texas/title-40/part-20/chapter-809/subchapter-b/section-809-20/",
21
+ "https://www.twc.texas.gov/programs/child-care-services",
22
+ )
23
+
24
+ def formula(person, period, parameters):
25
+ # Get child's age in years (convert to months for infant threshold)
26
+ age_years = person("age", period.this_year)
27
+ age_months = age_years * MONTHS_IN_YEAR
28
+ p = parameters(period).gov.states.tx.twc.ccs.age_threshold
29
+ return select(
30
+ [
31
+ age_months < p.infant, # Under 18 months = Infant
32
+ age_years < p.toddler, # Under 3 years = Toddler
33
+ age_years < p.school_age, # Under 6 years = Preschool
34
+ ],
35
+ [
36
+ TexasCCSChildAgeCategory.INFANT,
37
+ TexasCCSChildAgeCategory.TODDLER,
38
+ TexasCCSChildAgeCategory.PRESCHOOL,
39
+ ],
40
+ default=TexasCCSChildAgeCategory.SCHOOL_AGE,
41
+ )
@@ -0,0 +1,13 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class tx_ccs_countable_income(Variable):
5
+ value_type = float
6
+ entity = SPMUnit
7
+ definition_period = MONTH
8
+ label = "Texas Child Care Services countable income"
9
+ reference = "http://txrules.elaws.us/rule/title40_chapter809_sec.809.44"
10
+ unit = USD
11
+ defined_for = StateCode.TX
12
+
13
+ adds = "gov.states.tx.twc.ccs.income.sources"
@@ -0,0 +1,15 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class tx_ccs_maximum_payment(Variable):
5
+ value_type = float
6
+ entity = SPMUnit
7
+ label = "Texas Child Care Services program maximum payment"
8
+ unit = USD
9
+ definition_period = MONTH
10
+ defined_for = "tx_ccs_eligible"
11
+
12
+ def formula(spm_unit, period, parameters):
13
+ total_reimbursement = add(spm_unit, period, ["tx_ccs_payment_rate"])
14
+ parent_fee = spm_unit("tx_ccs_copay", period)
15
+ return max_(total_reimbursement - parent_fee, 0)
@@ -0,0 +1,68 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class TXCCSWorkforceBoardRegion(Enum):
5
+ PANHANDLE = "Panhandle" # WDA 1
6
+ SOUTH_PLAINS = "South Plains" # WDA 2
7
+ NORTH_TEXAS = "North Texas" # WDA 3
8
+ NORTH_CENTRAL = "North Central" # WDA 4
9
+ TARRANT_COUNTY = "Tarrant County" # WDA 5
10
+ DALLAS_COUNTY = "Dallas County" # WDA 6
11
+ NORTHEAST_TEXAS = "Northeast Texas" # WDA 7
12
+ EAST_TEXAS = "East Texas" # WDA 8
13
+ WEST_CENTRAL = "West Central" # WDA 9
14
+ BORDERPLEX = "Borderplex" # WDA 10
15
+ PERMIAN_BASIN = "Permian Basin" # WDA 11
16
+ CONCHO_VALLEY = "Concho Valley" # WDA 12
17
+ HEART_OF_TEXAS = "Heart of Texas" # WDA 13
18
+ CAPITAL_AREA = "Capital Area" # WDA 14
19
+ RURAL_CAPITAL = "Rural Capital" # WDA 15
20
+ BRAZOS_VALLEY = "Brazos Valley" # WDA 16
21
+ DEEP_EAST = "Deep East" # WDA 17
22
+ SOUTHEAST = "Southeast" # WDA 18
23
+ GOLDEN_CRESCENT = "Golden Crescent" # WDA 19
24
+ ALAMO = "Alamo" # WDA 20
25
+ SOUTH_TEXAS = "South Texas" # WDA 21
26
+ COASTAL_BEND = "Coastal Bend" # WDA 22
27
+ LOWER_RIO = "Lower Rio" # WDA 23
28
+ CAMERON_COUNTY = "Cameron County" # WDA 24
29
+ TEXOMA = "Texoma" # WDA 25
30
+ CENTRAL_TEXAS = "Central Texas" # WDA 26
31
+ MIDDLE_RIO = "Middle Rio" # WDA 27
32
+ GULF_COAST = "Gulf Coast" # WDA 28
33
+
34
+
35
+ class tx_ccs_workforce_board_region(Variable):
36
+ value_type = Enum
37
+ possible_values = TXCCSWorkforceBoardRegion
38
+ default_value = TXCCSWorkforceBoardRegion.PANHANDLE
39
+ entity = Household
40
+ definition_period = YEAR
41
+ label = "Texas CCS workforce board region"
42
+ defined_for = StateCode.TX
43
+ reference = [
44
+ "https://www.twc.texas.gov/sites/default/files/wf/docs/workforce-board-directory-twc.pdf",
45
+ "https://www.twc.texas.gov/sites/default/files/ccel/docs/bcy25-board-max-provider-payment-rates-4-age-groups-twc.pdf",
46
+ ]
47
+
48
+ def formula(household, period, parameters):
49
+ county = household("county_str", period)
50
+ p = parameters(period).gov.states.tx.twc.ccs.region
51
+
52
+ # Dynamically build conditions and results from enum
53
+ conditions = []
54
+ results = []
55
+
56
+ for region_enum in TXCCSWorkforceBoardRegion:
57
+ # Convert enum name to parameter name (PANHANDLE -> panhandle)
58
+ param_name = region_enum.name.lower()
59
+ region_param = getattr(p, param_name)
60
+
61
+ conditions.append(np.isin(county, region_param))
62
+ results.append(region_enum)
63
+
64
+ return select(
65
+ conditions,
66
+ results,
67
+ default=TXCCSWorkforceBoardRegion.PANHANDLE,
68
+ )
@@ -0,0 +1,13 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class tx_lifeline_supplement(Variable):
5
+ value_type = float
6
+ entity = SPMUnit
7
+ label = "Texas Lifeline supplement amount"
8
+ unit = USD
9
+ definition_period = MONTH
10
+ defined_for = StateCode.TX
11
+ reference = "https://www.law.cornell.edu/regulations/texas/16-Tex-Admin-Code-SS-26-412"
12
+
13
+ adds = ["gov.states.tx.uct.lifeline.supplement"]