policyengine-us 1.458.0__py3-none-any.whl → 1.465.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 (200) hide show
  1. policyengine_us/parameters/gov/contrib/aca/ptc_700_fpl_cliff/brackets.yaml +52 -0
  2. policyengine_us/parameters/gov/contrib/aca/ptc_700_fpl_cliff/in_effect.yaml +9 -0
  3. policyengine_us/parameters/gov/contrib/aca/ptc_700_fpl_cliff/income_eligibility.yaml +27 -0
  4. policyengine_us/parameters/gov/hhs/medicare/savings_programs/eligibility/asset/applies.yaml +115 -0
  5. policyengine_us/parameters/gov/hhs/medicare/savings_programs/eligibility/asset/couple.yaml +14 -0
  6. policyengine_us/parameters/gov/hhs/medicare/savings_programs/eligibility/asset/individual.yaml +14 -0
  7. policyengine_us/parameters/gov/hhs/medicare/savings_programs/eligibility/income/qi/fpl_limit.yaml +14 -0
  8. policyengine_us/parameters/gov/hhs/medicare/savings_programs/eligibility/income/qmb/fpl_limit.yaml +18 -0
  9. policyengine_us/parameters/gov/hhs/medicare/savings_programs/eligibility/income/slmb/fpl_limit.yaml +15 -0
  10. policyengine_us/parameters/gov/states/az/tax/income/credits/property_tax/income_sources.yaml +17 -9
  11. policyengine_us/parameters/gov/states/hi/tax/income/credits/food_excise_tax/amount/head_of_household.yaml +1 -1
  12. policyengine_us/parameters/gov/states/hi/tax/income/credits/food_excise_tax/amount/joint.yaml +1 -1
  13. policyengine_us/parameters/gov/states/hi/tax/income/credits/food_excise_tax/amount/separate.yaml +1 -1
  14. policyengine_us/parameters/gov/states/hi/tax/income/credits/food_excise_tax/amount/single.yaml +1 -1
  15. policyengine_us/parameters/gov/states/hi/tax/income/credits/food_excise_tax/amount/surviving_spouse.yaml +1 -1
  16. policyengine_us/parameters/gov/states/ia/tax/income/credits/child_care/fraction.yaml +1 -1
  17. policyengine_us/parameters/gov/states/il/dhs/aabd/asset/sources.yaml +0 -1
  18. policyengine_us/parameters/gov/states/mi/tax/income/household_resources.yaml +1 -1
  19. policyengine_us/parameters/gov/states/mo/dss/tanf/child_care_deduction/amount.yaml +27 -0
  20. policyengine_us/parameters/gov/states/mo/dss/tanf/earned_income_disregard/amount.yaml +14 -0
  21. policyengine_us/parameters/gov/states/mo/dss/tanf/earned_income_disregard/thirty_only/amount.yaml +14 -0
  22. policyengine_us/parameters/gov/states/mo/dss/tanf/earned_income_disregard/thirty_plus_one_third/flat_amount.yaml +14 -0
  23. policyengine_us/parameters/gov/states/mo/dss/tanf/earned_income_disregard/thirty_plus_one_third/percentage.yaml +14 -0
  24. policyengine_us/parameters/gov/states/mo/dss/tanf/earned_income_disregard/two_thirds_disregard/percentage.yaml +14 -0
  25. policyengine_us/parameters/gov/states/mo/dss/tanf/income_limit/max_table_size.yaml +12 -0
  26. policyengine_us/parameters/gov/states/mo/dss/tanf/income_limit/rate.yaml +14 -0
  27. policyengine_us/parameters/gov/states/mo/dss/tanf/maximum_benefit/percentage.yaml +14 -0
  28. policyengine_us/parameters/gov/states/mo/dss/tanf/minimum_payment.yaml +12 -0
  29. policyengine_us/parameters/gov/states/mo/dss/tanf/resource_limit/amount.yaml +14 -0
  30. policyengine_us/parameters/gov/states/mo/dss/tanf/standard_of_need/additional_person_increment.yaml +12 -0
  31. policyengine_us/parameters/gov/states/mo/dss/tanf/standard_of_need/amount.yaml +38 -0
  32. policyengine_us/parameters/gov/states/mo/dss/tanf/standard_of_need/base_table_max_size.yaml +12 -0
  33. policyengine_us/parameters/gov/states/pa/dhs/tanf/county_group/group_1.yaml +19 -0
  34. policyengine_us/parameters/gov/states/pa/dhs/tanf/county_group/group_2.yaml +44 -0
  35. policyengine_us/parameters/gov/states/pa/dhs/tanf/county_group/group_3.yaml +31 -0
  36. policyengine_us/parameters/gov/states/pa/dhs/tanf/county_group/group_4.yaml +29 -0
  37. policyengine_us/parameters/gov/states/pa/dhs/tanf/family_size_allowance/additional_person.yaml +14 -0
  38. policyengine_us/parameters/gov/states/pa/dhs/tanf/family_size_allowance/amount.yaml +69 -0
  39. policyengine_us/parameters/gov/states/pa/dhs/tanf/income/deductions/earned_income_disregard/percentage.yaml +14 -0
  40. policyengine_us/parameters/gov/states/pa/dhs/tanf/income/deductions/work_expense/additional.yaml +15 -0
  41. policyengine_us/parameters/gov/states/pa/dhs/tanf/income/deductions/work_expense/initial.yaml +14 -0
  42. policyengine_us/parameters/gov/states/pa/dhs/tanf/max_family_size_in_table.yaml +12 -0
  43. policyengine_us/parameters/gov/states/pa/dhs/tanf/resource_limit.yaml +7 -6
  44. policyengine_us/parameters/gov/states/pa/dhs/tanf/standard_of_need/additional_person.yaml +14 -0
  45. policyengine_us/parameters/gov/states/pa/dhs/tanf/standard_of_need/amount.yaml +69 -0
  46. policyengine_us/parameters/gov/states/wi/dcf/README.md +1 -0
  47. policyengine_us/parameters/gov/states/wi/dcf/works/README.md +1 -0
  48. policyengine_us/parameters/gov/states/wi/dcf/works/asset/limit.yaml +16 -0
  49. policyengine_us/parameters/gov/states/wi/dcf/works/asset/vehicle_exclusion.yaml +14 -0
  50. policyengine_us/parameters/gov/states/wi/dcf/works/income_limit/rate.yaml +16 -0
  51. policyengine_us/parameters/gov/states/wi/dcf/works/placement/amount.yaml +30 -0
  52. policyengine_us/parameters/gov/states/wi/dcf/works/placement/arp_pregnancy_month_threshold.yaml +14 -0
  53. policyengine_us/parameters/gov/states/wi/dcf/works/placement/cmc_infant_age_limit.yaml +15 -0
  54. policyengine_us/reforms/aca/__init__.py +3 -0
  55. policyengine_us/reforms/aca/aca_ptc_700_fpl_cliff.py +125 -0
  56. policyengine_us/reforms/reforms.py +5 -0
  57. policyengine_us/tests/policy/baseline/gov/hhs/medicare/savings_programs/category/msp_category.yaml +69 -0
  58. policyengine_us/tests/policy/baseline/gov/hhs/medicare/savings_programs/eligibility/msp_eligible.yaml +62 -0
  59. policyengine_us/tests/policy/baseline/gov/hhs/medicare/savings_programs/income/msp_fpg.yaml +22 -0
  60. policyengine_us/tests/policy/baseline/gov/hhs/medicare/savings_programs/integration.yaml +84 -0
  61. policyengine_us/tests/policy/baseline/gov/hhs/medicare/savings_programs/msp_benefit_value.yaml +62 -0
  62. policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/adjusted_gross_income/irs_gross_income/social_security/taxable_social_security_tier_1.yaml +157 -0
  63. policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/adjusted_gross_income/irs_gross_income/social_security/taxable_social_security_tier_2.yaml +106 -0
  64. policyengine_us/tests/policy/baseline/gov/ssa/revenue/tob_revenue_medicare_hi.yaml +105 -0
  65. policyengine_us/tests/policy/baseline/gov/ssa/revenue/tob_revenue_oasdi.yaml +86 -0
  66. policyengine_us/tests/policy/baseline/gov/ssa/revenue/tob_revenue_total.yaml +19 -0
  67. policyengine_us/tests/policy/baseline/gov/ssa/revenue/tob_tier_split.yaml +90 -0
  68. policyengine_us/tests/policy/baseline/gov/states/az/tax/income/az_property_tax_credit_agi.yaml +58 -0
  69. policyengine_us/tests/policy/baseline/gov/states/az/tax/income/integration.yaml +28 -0
  70. policyengine_us/tests/policy/baseline/gov/states/dc/tax/income/dc_ptc.yaml +27 -0
  71. policyengine_us/tests/policy/baseline/gov/states/hi/tax/income/credits/food_excise/hi_food_excise_credit.yaml +29 -1
  72. policyengine_us/tests/policy/baseline/gov/states/ia/tax/income/ia_cdcc.yaml +3 -3
  73. policyengine_us/tests/policy/baseline/gov/states/ia/tax/income/ia_integration.yaml +31 -1
  74. policyengine_us/tests/policy/baseline/gov/states/il/dhs/aabd/eligibility/il_aabd_non_financial_eligible_person.yaml +6 -6
  75. policyengine_us/tests/policy/baseline/gov/states/il/hfs/fpp/integration.yaml +2 -2
  76. policyengine_us/tests/policy/baseline/gov/states/il/hfs/hbwd/eligibility/il_hbwd_disability_eligible.yaml +18 -5
  77. policyengine_us/tests/policy/baseline/gov/states/il/hfs/hbwd/eligibility/il_hbwd_eligible.yaml +5 -5
  78. policyengine_us/tests/policy/baseline/gov/states/il/hfs/hbwd/integration.yaml +8 -8
  79. policyengine_us/tests/policy/baseline/gov/states/ma/tax/income/gross_income/integration.yaml +28 -0
  80. policyengine_us/tests/policy/baseline/gov/states/me/tax/income/credits/integration.yaml +87 -0
  81. policyengine_us/tests/policy/baseline/gov/states/me/tax/income/credits/me_dependent_exemption_credit_amount_person.yaml +3 -2
  82. policyengine_us/tests/policy/baseline/gov/states/mi/tax/income/credits/home_heating/mi_home_heating_credit.yaml +87 -0
  83. policyengine_us/tests/policy/baseline/gov/states/mi/tax/income/mi_household_resources.yaml +57 -0
  84. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/integration.yaml +275 -0
  85. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf.yaml +60 -0
  86. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_child_care_deduction.yaml +187 -0
  87. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_countable_income.yaml +49 -0
  88. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_earned_income_deductions.yaml +53 -0
  89. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_eligible.yaml +59 -0
  90. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_gross_income_eligible.yaml +29 -0
  91. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_income_eligible.yaml +49 -0
  92. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_maximum_benefit.yaml +47 -0
  93. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_percentage_of_need_test.yaml +53 -0
  94. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_resources_eligible.yaml +23 -0
  95. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_standard_of_need.yaml +71 -0
  96. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_standard_of_need_test.yaml +44 -0
  97. policyengine_us/tests/policy/baseline/gov/states/mt/tax/income/integration.yaml +29 -0
  98. policyengine_us/tests/policy/baseline/gov/states/pa/dhs/tanf/eligibility/pa_tanf_disregard_eligible.yaml +114 -0
  99. policyengine_us/tests/policy/baseline/gov/states/pa/dhs/tanf/eligibility/pa_tanf_eligible.yaml +65 -0
  100. policyengine_us/tests/policy/baseline/gov/states/pa/dhs/tanf/eligibility/pa_tanf_income_eligible.yaml +62 -0
  101. policyengine_us/tests/policy/baseline/gov/states/pa/dhs/tanf/eligibility/pa_tanf_resources_eligible.yaml +47 -0
  102. policyengine_us/tests/policy/baseline/gov/states/pa/dhs/tanf/income/pa_tanf_earned_income_after_deductions_person.yaml +81 -0
  103. policyengine_us/tests/policy/baseline/gov/states/pa/dhs/tanf/integration.yaml +386 -0
  104. policyengine_us/tests/policy/baseline/gov/states/pa/dhs/tanf/pa_tanf.yaml +53 -0
  105. policyengine_us/tests/policy/baseline/gov/states/pa/dhs/tanf/pa_tanf_county_group.yaml +63 -0
  106. policyengine_us/tests/policy/baseline/gov/states/pa/dhs/tanf/pa_tanf_maximum_benefit.yaml +92 -0
  107. policyengine_us/tests/policy/baseline/gov/states/pa/dhs/tanf/pa_tanf_standard_of_need.yaml +73 -0
  108. policyengine_us/tests/policy/baseline/gov/states/wi/dcf/works/integration.yaml +282 -0
  109. policyengine_us/tests/policy/baseline/gov/states/wi/dcf/works/wi_works.yaml +50 -0
  110. policyengine_us/tests/policy/baseline/gov/states/wi/dcf/works/wi_works_countable_income.yaml +49 -0
  111. policyengine_us/tests/policy/baseline/gov/states/wi/dcf/works/wi_works_countable_resources.yaml +54 -0
  112. policyengine_us/tests/policy/baseline/gov/states/wi/dcf/works/wi_works_eligible.yaml +61 -0
  113. policyengine_us/tests/policy/baseline/gov/states/wi/dcf/works/wi_works_income_eligible.yaml +43 -0
  114. policyengine_us/tests/policy/baseline/gov/states/wi/dcf/works/wi_works_placement.yaml +111 -0
  115. policyengine_us/tests/policy/baseline/gov/states/wi/dcf/works/wi_works_resources_eligible.yaml +38 -0
  116. policyengine_us/tests/policy/baseline/gov/states/wv/tax/income/credits/heptc/wv_homestead_excess_property_tax_credit.yaml +31 -0
  117. policyengine_us/tests/policy/contrib/aca/ptc_700_fpl_cliff.yaml +136 -0
  118. policyengine_us/tests/test_batched.py +39 -68
  119. policyengine_us/variables/gov/hhs/medicare/savings_programs/category/is_qi_eligible.py +33 -0
  120. policyengine_us/variables/gov/hhs/medicare/savings_programs/category/is_qmb_eligible.py +28 -0
  121. policyengine_us/variables/gov/hhs/medicare/savings_programs/category/is_slmb_eligible.py +33 -0
  122. policyengine_us/variables/gov/hhs/medicare/savings_programs/category/msp_category.py +33 -0
  123. policyengine_us/variables/gov/hhs/medicare/savings_programs/eligibility/msp_asset_eligible.py +26 -0
  124. policyengine_us/variables/gov/hhs/medicare/savings_programs/eligibility/msp_eligible.py +20 -0
  125. policyengine_us/variables/gov/hhs/medicare/savings_programs/eligibility/msp_income_eligible.py +26 -0
  126. policyengine_us/variables/gov/hhs/medicare/savings_programs/income/msp_countable_income.py +35 -0
  127. policyengine_us/variables/gov/hhs/medicare/savings_programs/income/msp_fpg.py +40 -0
  128. policyengine_us/variables/gov/hhs/medicare/savings_programs/msp.py +15 -0
  129. policyengine_us/variables/gov/hhs/medicare/savings_programs/msp_benefit_value.py +37 -0
  130. policyengine_us/variables/gov/irs/income/taxable_income/adjusted_gross_income/irs_gross_income/social_security/taxable_social_security_tier_1.py +58 -0
  131. policyengine_us/variables/gov/irs/income/taxable_income/adjusted_gross_income/irs_gross_income/social_security/taxable_social_security_tier_2.py +17 -0
  132. policyengine_us/variables/gov/simulation/labor_supply_response/labor_supply_behavioral_response.py +57 -42
  133. policyengine_us/variables/gov/ssa/revenue/tob_revenue_medicare_hi.py +31 -0
  134. policyengine_us/variables/gov/ssa/revenue/tob_revenue_oasdi.py +31 -0
  135. policyengine_us/variables/gov/ssa/revenue/tob_revenue_total.py +44 -0
  136. policyengine_us/variables/gov/states/az/tax/income/credits/property_tax_credit/az_property_tax_credit_agi.py +53 -0
  137. policyengine_us/variables/gov/states/dc/tax/income/credits/dc_ptc.py +7 -3
  138. policyengine_us/variables/gov/states/ia/tax/income/credits/ia_cdcc.py +4 -2
  139. policyengine_us/variables/gov/states/il/dhs/aabd/eligibility/il_aabd_non_financial_eligible_person.py +23 -5
  140. policyengine_us/variables/gov/states/il/hfs/fpp/eligibility/il_fpp_eligible.py +1 -1
  141. policyengine_us/variables/gov/states/il/hfs/hbwd/eligibility/il_hbwd_disability_eligible.py +7 -3
  142. policyengine_us/variables/gov/states/ma/tax/income/gross_income/ma_part_c_gross_income.py +7 -1
  143. policyengine_us/variables/gov/states/me/tax/income/credits/dependent_exemption/me_dependent_exemption_credit_amount_person.py +1 -1
  144. policyengine_us/variables/gov/states/mi/tax/income/mi_household_resources.py +34 -5
  145. policyengine_us/variables/gov/states/mo/dss/tanf/eligibility/mo_tanf_eligible.py +23 -0
  146. policyengine_us/variables/gov/states/mo/dss/tanf/eligibility/mo_tanf_gross_income_eligible.py +24 -0
  147. policyengine_us/variables/gov/states/mo/dss/tanf/eligibility/mo_tanf_income_eligible.py +18 -0
  148. policyengine_us/variables/gov/states/mo/dss/tanf/eligibility/mo_tanf_percentage_of_need_test.py +20 -0
  149. policyengine_us/variables/gov/states/mo/dss/tanf/eligibility/mo_tanf_resources_eligible.py +18 -0
  150. policyengine_us/variables/gov/states/mo/dss/tanf/eligibility/mo_tanf_standard_of_need_test.py +17 -0
  151. policyengine_us/variables/gov/states/mo/dss/tanf/income/deductions/mo_tanf_child_care_deduction.py +24 -0
  152. policyengine_us/variables/gov/states/mo/dss/tanf/income/deductions/mo_tanf_earned_income_deductions.py +36 -0
  153. policyengine_us/variables/gov/states/mo/dss/tanf/income/mo_tanf_countable_income.py +21 -0
  154. policyengine_us/variables/gov/states/mo/dss/tanf/income/mo_tanf_income_for_need_test.py +23 -0
  155. policyengine_us/variables/gov/states/mo/dss/tanf/mo_tanf.py +21 -0
  156. policyengine_us/variables/gov/states/mo/dss/tanf/mo_tanf_maximum_benefit.py +19 -0
  157. policyengine_us/variables/gov/states/mo/dss/tanf/mo_tanf_standard_of_need.py +23 -0
  158. policyengine_us/variables/gov/states/mt/tax/income/capital_gains/mt_capital_gains_tax_indiv.py +3 -1
  159. policyengine_us/variables/gov/states/mt/tax/income/capital_gains/mt_capital_gains_tax_joint.py +3 -1
  160. policyengine_us/variables/gov/states/mt/tax/income/tax_calculation/mt_regular_income_tax_indiv.py +3 -0
  161. policyengine_us/variables/gov/states/mt/tax/income/tax_calculation/mt_regular_income_tax_joint.py +3 -0
  162. policyengine_us/variables/gov/states/pa/dhs/tanf/eligibility/pa_tanf_disregard_eligible.py +31 -0
  163. policyengine_us/variables/gov/states/pa/dhs/tanf/eligibility/pa_tanf_eligible.py +29 -0
  164. policyengine_us/variables/gov/states/pa/dhs/tanf/eligibility/pa_tanf_income_eligible.py +16 -0
  165. policyengine_us/variables/gov/states/pa/dhs/tanf/eligibility/pa_tanf_resources_eligible.py +7 -5
  166. policyengine_us/variables/gov/states/pa/dhs/tanf/income/pa_tanf_countable_earned_income.py +15 -0
  167. policyengine_us/variables/gov/states/pa/dhs/tanf/income/pa_tanf_countable_income.py +16 -0
  168. policyengine_us/variables/gov/states/pa/dhs/tanf/income/pa_tanf_earned_income_after_deductions_person.py +27 -0
  169. policyengine_us/variables/gov/states/pa/dhs/tanf/pa_tanf.py +19 -0
  170. policyengine_us/variables/gov/states/pa/dhs/tanf/pa_tanf_county_group.py +38 -0
  171. policyengine_us/variables/gov/states/pa/dhs/tanf/pa_tanf_maximum_benefit.py +30 -0
  172. policyengine_us/variables/gov/states/pa/dhs/tanf/pa_tanf_standard_of_need.py +30 -0
  173. policyengine_us/variables/gov/states/wi/dcf/works/eligibility/wi_works_eligible.py +22 -0
  174. policyengine_us/variables/gov/states/wi/dcf/works/eligibility/wi_works_income_eligible.py +20 -0
  175. policyengine_us/variables/gov/states/wi/dcf/works/eligibility/wi_works_resources_eligible.py +18 -0
  176. policyengine_us/variables/gov/states/wi/dcf/works/income/wi_works_countable_income.py +18 -0
  177. policyengine_us/variables/gov/states/wi/dcf/works/resources/wi_works_countable_resources.py +21 -0
  178. policyengine_us/variables/gov/states/wi/dcf/works/wi_works.py +19 -0
  179. policyengine_us/variables/gov/states/wi/dcf/works/wi_works_placement.py +45 -0
  180. policyengine_us/variables/gov/states/wv/tax/income/credits/heptc/wv_homestead_excess_property_tax_credit.py +3 -3
  181. policyengine_us/variables/gov/states/wv/tax/income/credits/heptc/wv_homestead_excess_property_tax_credit_eligible.py +5 -2
  182. {policyengine_us-1.458.0.dist-info → policyengine_us-1.465.0.dist-info}/METADATA +1 -1
  183. {policyengine_us-1.458.0.dist-info → policyengine_us-1.465.0.dist-info}/RECORD +186 -62
  184. policyengine_us/parameters/gov/states/il/dhs/aabd/aged_age_threshold.yaml +0 -11
  185. policyengine_us/parameters/gov/states/mo/dss/tanf/income_limit.yaml +0 -26
  186. policyengine_us/parameters/gov/states/pa/dhs/tanf/cash_assistance/age_limit.yaml +0 -11
  187. policyengine_us/parameters/gov/states/pa/dhs/tanf/pregnancy_eligibility/age_limit.yaml +0 -9
  188. policyengine_us/tests/policy/baseline/gov/states/il/dhs/aabd/eligibility/il_aabd_aged_blind_disabled_person.yaml +0 -39
  189. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_income_limit.yaml +0 -23
  190. policyengine_us/tests/policy/baseline/gov/states/pa/tanf/cash_assistance/pa_tanf_age_eligible.yaml +0 -44
  191. policyengine_us/tests/policy/baseline/gov/states/pa/tanf/pregnancy_eligibility/pa_tanf_pregnancy_eligibility.yaml +0 -59
  192. policyengine_us/tests/policy/baseline/gov/states/pa/tax/income/dhs/tanf/eligibility/pa_tanf_resources_eligible.yaml +0 -24
  193. policyengine_us/variables/gov/states/il/dhs/aabd/eligibility/il_aabd_aged_blind_disabled_person.py +0 -22
  194. policyengine_us/variables/gov/states/mo/dss/tanf/mo_tanf_income_limit.py +0 -18
  195. policyengine_us/variables/gov/states/pa/dhs/tanf/cash_assistance/pa_tanf_age_eligible.py +0 -22
  196. policyengine_us/variables/gov/states/pa/dhs/tanf/eligibility/pa_tanf_countable_resources.py +0 -10
  197. policyengine_us/variables/gov/states/pa/dhs/tanf/eligibility/pregnancy_eligibility/age_eligibility.py +0 -22
  198. {policyengine_us-1.458.0.dist-info → policyengine_us-1.465.0.dist-info}/WHEEL +0 -0
  199. {policyengine_us-1.458.0.dist-info → policyengine_us-1.465.0.dist-info}/entry_points.txt +0 -0
  200. {policyengine_us-1.458.0.dist-info → policyengine_us-1.465.0.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,86 @@
1
+ # Unit tests for tob_revenue_oasdi
2
+ # Tests OASDI trust fund revenue allocation from SS benefit taxation
3
+ # OASDI receives revenue proportional to tier 1's share of total taxable SS
4
+
5
+ - name: No SS benefits - zero OASDI revenue
6
+ period: 2024
7
+ input:
8
+ people:
9
+ person1:
10
+ age: 67
11
+ social_security: 0
12
+ employment_income: 100_000
13
+ tax_units:
14
+ tax_unit:
15
+ members: [person1]
16
+ filing_status: SINGLE
17
+ households:
18
+ household:
19
+ members: [person1]
20
+ output:
21
+ tob_revenue_oasdi: 0
22
+
23
+ - name: Below threshold - zero OASDI revenue
24
+ period: 2024
25
+ input:
26
+ people:
27
+ person1:
28
+ age: 67
29
+ social_security: 20_000
30
+ employment_income: 10_000
31
+ tax_units:
32
+ tax_unit:
33
+ members: [person1]
34
+ filing_status: SINGLE
35
+ households:
36
+ household:
37
+ members: [person1]
38
+ output:
39
+ # No taxable SS → no TOB revenue → no OASDI share
40
+ tob_revenue_oasdi: 0
41
+
42
+ - name: Tier 1 only - all revenue to OASDI
43
+ period: 2024
44
+ absolute_error_margin: 50
45
+ input:
46
+ people:
47
+ person1:
48
+ age: 67
49
+ social_security: 20_000
50
+ employment_income: 20_000
51
+ tax_units:
52
+ tax_unit:
53
+ members: [person1]
54
+ filing_status: SINGLE
55
+ households:
56
+ household:
57
+ members: [person1]
58
+ output:
59
+ # In tier 1 only: tier1 = $2,500, tier2 = $0
60
+ # All taxable SS is tier 1 → 100% to OASDI
61
+ # Total TOB revenue all goes to OASDI
62
+ taxable_social_security_tier_1: 2_500
63
+ taxable_social_security_tier_2: 0
64
+ # tob_revenue_oasdi = tob_revenue_total (100% share)
65
+
66
+ - name: In tier 2 - proportional split
67
+ period: 2024
68
+ absolute_error_margin: 100
69
+ input:
70
+ people:
71
+ person1:
72
+ age: 67
73
+ social_security: 30_000
74
+ employment_income: 50_000
75
+ tax_units:
76
+ tax_unit:
77
+ members: [person1]
78
+ filing_status: SINGLE
79
+ households:
80
+ household:
81
+ members: [person1]
82
+ output:
83
+ # Tier 1 = $4,500, Tier 2 = $21,000, Total = $25,500
84
+ # OASDI share = 4,500 / 25,500 = 17.6%
85
+ # Total TOB ~$4,240 → OASDI = $4,240 * 0.176 = ~$748
86
+ tob_revenue_oasdi: 748
@@ -0,0 +1,19 @@
1
+ - name: TOB revenue - single retiree with SS and wages
2
+ period: 2024
3
+ absolute_error_margin: 100
4
+ input:
5
+ people:
6
+ person1:
7
+ age: 67
8
+ social_security: 30_000
9
+ employment_income: 50_000
10
+ tax_units:
11
+ tax_unit:
12
+ members: [person1]
13
+ filing_status: SINGLE
14
+ households:
15
+ household:
16
+ members: [person1]
17
+ output:
18
+ # Actual value is around $4,240
19
+ tob_revenue_total: 4_240
@@ -0,0 +1,90 @@
1
+ # Test that TOB revenue split matches Trustees Report projections
2
+ # Per 2025 Trustees Report (via CBPP):
3
+ # - OASDI (tier 1): ~59% of total TOB revenue ($60.8B / $103.4B)
4
+ # - Medicare HI (tier 2): ~41% of total TOB revenue ($42.6B / $103.4B)
5
+ #
6
+ # The statutory allocation is:
7
+ # - Tier 1 (first 50% of benefits taxable): Revenue to OASDI
8
+ # - Tier 2 (additional 35%, up to 85% taxable): Revenue to Medicare HI
9
+ #
10
+ # For a single retiree with $30K SS and $50K wages:
11
+ # - Combined income = $50K + $15K (half SS) = $65K
12
+ # - Above adjusted base ($34K), so 85% of SS taxable = $25,500
13
+ # - Tier 1 should be ~59% of taxable ($15,045)
14
+ # - Tier 2 should be ~41% of taxable ($10,455)
15
+ #
16
+ # BUG: Current implementation has tier_2 with only `subtracts` and no `adds`,
17
+ # which computes: 0 - total - tier1 = NEGATIVE (wrong!)
18
+ # Should be: adds=["tax_unit_taxable_social_security"], subtracts=["tier_1"]
19
+
20
+ - name: TOB tier split - single retiree in tier 2
21
+ period: 2024
22
+ absolute_error_margin: 500
23
+ input:
24
+ people:
25
+ person1:
26
+ age: 67
27
+ social_security: 30_000
28
+ employment_income: 50_000
29
+ tax_units:
30
+ tax_unit:
31
+ members: [person1]
32
+ filing_status: SINGLE
33
+ households:
34
+ household:
35
+ members: [person1]
36
+ output:
37
+ # Total taxable SS should be 85% of $30K = $25,500
38
+ tax_unit_taxable_social_security: 25_500
39
+ # Tier 1 (OASDI portion) - statutory bracket amount for single filer in tier 2
40
+ # = min(0.5 * $30K, 0.5 * ($34K - $25K)) = min($15K, $4.5K) = $4,500
41
+ taxable_social_security_tier_1: 4_500
42
+ # Tier 2 (Medicare HI portion) = total - tier1 = $25,500 - $4,500 = $21,000
43
+ # This is where the bug manifests - with only subtracts, it computes negative!
44
+ taxable_social_security_tier_2: 21_000
45
+
46
+ - name: TOB revenue split follows tier proportions
47
+ period: 2024
48
+ absolute_error_margin: 100
49
+ input:
50
+ people:
51
+ person1:
52
+ age: 67
53
+ social_security: 30_000
54
+ employment_income: 50_000
55
+ tax_units:
56
+ tax_unit:
57
+ members: [person1]
58
+ filing_status: SINGLE
59
+ households:
60
+ household:
61
+ members: [person1]
62
+ output:
63
+ # With tiers at ~18% tier1 / ~82% tier2 for this individual case,
64
+ # the TOB revenue should split proportionally.
65
+ # Total TOB revenue ~$4,240 (from existing test)
66
+ # OASDI share: $4,240 * (4,500 / 25,500) = $748
67
+ # Medicare HI share: $4,240 * (21,000 / 25,500) = $3,492
68
+ tob_revenue_total: 4240
69
+ tob_revenue_oasdi: 748
70
+ tob_revenue_medicare_hi: 3492
71
+
72
+ - name: Verify tier2 is positive (regression test for subtracts bug)
73
+ period: 2024
74
+ input:
75
+ people:
76
+ person1:
77
+ age: 67
78
+ social_security: 20_000
79
+ employment_income: 40_000
80
+ tax_units:
81
+ tax_unit:
82
+ members: [person1]
83
+ filing_status: SINGLE
84
+ households:
85
+ household:
86
+ members: [person1]
87
+ output:
88
+ # Tier 2 MUST be positive (total - tier1)
89
+ # If buggy subtracts computes 0 - total - tier1, this will be negative and fail
90
+ taxable_social_security_tier_2: 12_500 # Approximate, will fail if negative
@@ -0,0 +1,58 @@
1
+ # Per ITR 12-1, property tax credit AGI is Federal AGI minus Social Security.
2
+ # Unlike regular AZ income tax, it does NOT exclude pensions, capital gains, etc.
3
+
4
+ - name: Basic wages and interest (no Social Security)
5
+ period: 2024
6
+ input:
7
+ state_code: AZ
8
+ adjusted_gross_income: 3_766.08
9
+ tax_unit_taxable_social_security: 0
10
+ output:
11
+ az_property_tax_credit_agi: 3_766.08
12
+
13
+ - name: Social Security is excluded from property tax credit AGI
14
+ period: 2024
15
+ input:
16
+ state_code: AZ
17
+ adjusted_gross_income: 20_000
18
+ tax_unit_taxable_social_security: 8_500
19
+ output:
20
+ # $20,000 - $8,500 = $11,500
21
+ az_property_tax_credit_agi: 11_500
22
+
23
+ - name: Pension income is NOT excluded (unlike regular AZ income tax)
24
+ period: 2024
25
+ input:
26
+ state_code: AZ
27
+ adjusted_gross_income: 15_000
28
+ tax_unit_taxable_social_security: 0
29
+ output:
30
+ az_property_tax_credit_agi: 15_000
31
+
32
+ - name: Capital gains are NOT excluded (unlike regular AZ income tax)
33
+ period: 2024
34
+ input:
35
+ state_code: AZ
36
+ adjusted_gross_income: 25_000
37
+ tax_unit_taxable_social_security: 0
38
+ output:
39
+ az_property_tax_credit_agi: 25_000
40
+
41
+ - name: Capped at zero when Social Security exceeds other income
42
+ period: 2024
43
+ input:
44
+ state_code: AZ
45
+ adjusted_gross_income: 5_000
46
+ tax_unit_taxable_social_security: 6_000
47
+ output:
48
+ az_property_tax_credit_agi: 0
49
+
50
+ - name: Combined income types with Social Security exclusion
51
+ period: 2024
52
+ input:
53
+ state_code: AZ
54
+ adjusted_gross_income: 22_250
55
+ tax_unit_taxable_social_security: 4_250
56
+ output:
57
+ # $22,250 - $4,250 = $18,000
58
+ az_property_tax_credit_agi: 18_000
@@ -0,0 +1,28 @@
1
+ # Integration tests for Arizona property tax credit income calculation
2
+ # Per ARS 43-1072 and ITR 12-1
3
+
4
+ - name: Property tax credit AGI with aged person (issue 6956)
5
+ period: 2024
6
+ input:
7
+ people:
8
+ person1:
9
+ age: 75
10
+ employment_income: 3_715.56
11
+ taxable_interest_income: 50.52
12
+ tax_units:
13
+ tax_unit:
14
+ members: [person1]
15
+ households:
16
+ household:
17
+ members: [person1]
18
+ state_code: AZ
19
+ output:
20
+ # Federal AGI = wages + interest = 3,715.56 + 50.52 = 3,766.08
21
+ adjusted_gross_income: 3_766.08
22
+ # AZ AGI subtracts aged exemption: 3,766.08 - 2,100 = 1,666.08
23
+ az_agi: 1_666.08
24
+ # Property tax credit AGI should NOT subtract exemptions or SS
25
+ # No SS, so equals Federal AGI
26
+ az_property_tax_credit_agi: 3_766.08
27
+ # Income $3,766.08 > threshold $3,751 for single, so not eligible
28
+ az_property_tax_credit: 0
@@ -243,3 +243,30 @@
243
243
  state_code: DC
244
244
  output:
245
245
  dc_ptc: 1_250 # = min(1250, 20000 * 20% - 0 * 5%)
246
+
247
+ - name: dc_ptc unit test 9 (negative AGI with no rent or property taxes)
248
+ absolute_error_margin: 0.01
249
+ period: 2024
250
+ input:
251
+ people:
252
+ person1:
253
+ is_tax_unit_head: true
254
+ age: 40
255
+ short_term_capital_gains: -12_679.877
256
+ person2:
257
+ is_tax_unit_spouse: true
258
+ age: 40
259
+ short_term_capital_gains: -12_679.877
260
+ tax_units:
261
+ tax_unit:
262
+ members: [person1, person2]
263
+ spm_units:
264
+ spm_unit:
265
+ members: [person1, person2]
266
+ households:
267
+ household:
268
+ members: [person1, person2]
269
+ state_code: DC
270
+ output:
271
+ dc_ptc: 0 # No credit when there's no rent or property taxes paid
272
+ dc_income_tax: 0
@@ -225,8 +225,36 @@
225
225
  filing_status: SINGLE
226
226
  head_is_dependent_elsewhere: false
227
227
  households:
228
- household:
228
+ household:
229
229
  members: [person1, person2]
230
230
  state_code: HI
231
231
  output:
232
232
  hi_food_excise_credit: 200
233
+
234
+ - name: JOINT filing with negative AGI should receive credit
235
+ period: 2024
236
+ input:
237
+ people:
238
+ person1:
239
+ age: 40
240
+ short_term_capital_gains: -12_679.877
241
+ is_tax_unit_head: true
242
+ person2:
243
+ age: 40
244
+ short_term_capital_gains: -12_679.877
245
+ is_tax_unit_spouse: true
246
+ tax_units:
247
+ tax_unit:
248
+ members: [person1, person2]
249
+ spm_units:
250
+ spm_unit:
251
+ members: [person1, person2]
252
+ households:
253
+ household:
254
+ members: [person1, person2]
255
+ state_code: HI
256
+ output:
257
+ adjusted_gross_income: -3_000
258
+ exemptions_count: 2
259
+ hi_food_excise_credit: 440
260
+ hi_income_tax: -440
@@ -2,7 +2,7 @@
2
2
  period: 2021
3
3
  input:
4
4
  cdcc_potential: 1_000
5
- ia_net_income: 9_999.99
5
+ ia_taxable_income: 9_999.99
6
6
  state_code: IA
7
7
  output:
8
8
  ia_cdcc: 750
@@ -11,7 +11,7 @@
11
11
  period: 2022
12
12
  input:
13
13
  cdcc_potential: 1_000
14
- ia_net_income: 40_000
14
+ ia_taxable_income: 40_000
15
15
  state_code: IA
16
16
  output:
17
17
  ia_cdcc: 300
@@ -20,7 +20,7 @@
20
20
  period: 2022
21
21
  input:
22
22
  cdcc_potential: 1_000
23
- ia_net_income: 90_000
23
+ ia_taxable_income: 90_000
24
24
  state_code: IA
25
25
  output:
26
26
  ia_cdcc: 0
@@ -372,5 +372,35 @@
372
372
  household:
373
373
  members: [person1]
374
374
  state_code: IA
375
- output:
375
+ output:
376
376
  ia_taxable_income_consolidated: 85_400
377
+
378
+ - name: IA CDCC uses taxable income not net income
379
+ absolute_error_margin: 1
380
+ period: 2024
381
+ input:
382
+ people:
383
+ person1:
384
+ age: 70
385
+ employment_income: 10_000
386
+ is_tax_unit_head: true
387
+ person2:
388
+ age: 70
389
+ employment_income: 10_000
390
+ is_tax_unit_spouse: true
391
+ person3:
392
+ age: 1
393
+ is_tax_unit_dependent: true
394
+ tax_units:
395
+ tax_unit:
396
+ members: [person1, person2, person3]
397
+ tax_unit_childcare_expenses: 10_827
398
+ spm_units:
399
+ spm_unit:
400
+ members: [person1, person2, person3]
401
+ households:
402
+ household:
403
+ members: [person1, person2, person3]
404
+ state_code: IA
405
+ output:
406
+ ia_cdcc: 720 # $960 × 0.75 (taxable income $0 < $10,000)
@@ -1,25 +1,25 @@
1
- - name: Case 1, meet all requirements.
1
+ - name: Case 1, meet all requirements.
2
2
  period: 2023
3
3
  input:
4
- il_aabd_aged_blind_disabled_person: true
4
+ is_ssi_eligible: true
5
5
  il_aabd_immigration_status_eligible_person: true
6
6
  state_code: IL
7
7
  output:
8
8
  il_aabd_non_financial_eligible_person: true
9
9
 
10
- - name: Case 2, not age_blind_disabled.
10
+ - name: Case 2, not SSI eligible.
11
11
  period: 2023
12
12
  input:
13
- il_aabd_aged_blind_disabled_person: false
13
+ is_ssi_eligible: false
14
14
  il_aabd_immigration_status_eligible_person: true
15
15
  state_code: IL
16
16
  output:
17
17
  il_aabd_non_financial_eligible_person: false
18
18
 
19
- - name: Case 3, immigration ineligible.
19
+ - name: Case 3, immigration ineligible.
20
20
  period: 2023
21
21
  input:
22
- il_aabd_aged_blind_disabled_person: true
22
+ is_ssi_eligible: true
23
23
  il_aabd_immigration_status_eligible_person: false
24
24
  state_code: IL
25
25
  output:
@@ -112,5 +112,5 @@
112
112
  # person2: $25,000 / $20,440 = 1.22 (122% FPL) - income eligible
113
113
  # person3, person4: $0 income - income eligible
114
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]
115
+ # All meet criteria: income eligible, not pregnant, not receiving Medicaid
116
+ il_fpp_eligible: [true, true, true, true]
@@ -1,8 +1,8 @@
1
- - name: Case 1, disability eligible via SSI disability.
1
+ - name: Case 1, disability eligible via disability status.
2
2
  period: 2024-01
3
3
  input:
4
4
  state_code: IL
5
- is_ssi_disabled: true
5
+ is_disabled: true
6
6
  social_security_disability: 0
7
7
  output:
8
8
  il_hbwd_disability_eligible: true
@@ -11,7 +11,7 @@
11
11
  period: 2024-01
12
12
  input:
13
13
  state_code: IL
14
- is_ssi_disabled: false
14
+ is_disabled: false
15
15
  social_security_disability: 14_400 # $1,200/month
16
16
  output:
17
17
  il_hbwd_disability_eligible: true
@@ -20,7 +20,7 @@
20
20
  period: 2024-01
21
21
  input:
22
22
  state_code: IL
23
- is_ssi_disabled: true
23
+ is_disabled: true
24
24
  social_security_disability: 14_400 # $1,200/month
25
25
  output:
26
26
  il_hbwd_disability_eligible: true
@@ -29,7 +29,20 @@
29
29
  period: 2024-01
30
30
  input:
31
31
  state_code: IL
32
- is_ssi_disabled: false
32
+ is_disabled: false
33
33
  social_security_disability: 0
34
34
  output:
35
35
  il_hbwd_disability_eligible: false
36
+
37
+ - name: Case 5, disabled with high earnings (above SGA) - eligible because SGA does not apply to HBWD.
38
+ # This test demonstrates the fix: with the old formula (is_ssi_disabled),
39
+ # this person would be ineligible due to SGA ($1,550/month in 2024).
40
+ # With the new formula (is_disabled), SGA does not apply per DB101 Illinois.
41
+ period: 2024-01
42
+ input:
43
+ state_code: IL
44
+ is_disabled: true
45
+ employment_income: 36_000 # $3,000/month - well above SGA threshold
46
+ social_security_disability: 0
47
+ output:
48
+ il_hbwd_disability_eligible: true
@@ -3,7 +3,7 @@
3
3
  input:
4
4
  state_code: IL
5
5
  age: 35
6
- is_ssi_disabled: true
6
+ is_disabled: true
7
7
  employment_income: 30_000 # $2,500/month
8
8
  spm_unit_cash_assets: 10_000
9
9
  output:
@@ -25,7 +25,7 @@
25
25
  input:
26
26
  state_code: IL
27
27
  age: 70
28
- is_ssi_disabled: true
28
+ is_disabled: true
29
29
  employment_income: 24_000 # $2,000/month
30
30
  spm_unit_cash_assets: 5_000
31
31
  output:
@@ -36,7 +36,7 @@
36
36
  input:
37
37
  state_code: IL
38
38
  age: 40
39
- is_ssi_disabled: true
39
+ is_disabled: true
40
40
  social_security_disability: 18_000 # $1,500/month
41
41
  spm_unit_cash_assets: 5_000
42
42
  output:
@@ -47,7 +47,7 @@
47
47
  input:
48
48
  state_code: IL
49
49
  age: 45
50
- is_ssi_disabled: true
50
+ is_disabled: true
51
51
  employment_income: 72_000 # $6,000/month
52
52
  spm_unit_cash_assets: 5_000
53
53
  output:
@@ -58,7 +58,7 @@
58
58
  input:
59
59
  state_code: IL
60
60
  age: 30
61
- is_ssi_disabled: true
61
+ is_disabled: true
62
62
  employment_income: 24_000 # $2,000/month
63
63
  spm_unit_cash_assets: 30_000
64
64
  output:
@@ -4,7 +4,7 @@
4
4
  input:
5
5
  state_code: IL
6
6
  age: 28
7
- is_ssi_disabled: true
7
+ is_disabled: true
8
8
  employment_income: 24_000 # $2,000/month
9
9
  social_security_disability: 12_000 # $1,000/month
10
10
  spm_unit_cash_assets: 15_000
@@ -35,12 +35,12 @@
35
35
  people:
36
36
  person1:
37
37
  age: 45
38
- is_ssi_disabled: true
38
+ is_disabled: true
39
39
  employment_income: 30_000 # $2,500/month
40
40
  social_security_disability: 9_600 # $800/month
41
41
  person2:
42
42
  age: 43
43
- is_ssi_disabled: false
43
+ is_disabled: false
44
44
  employment_income: 36_000 # $3,000/month
45
45
  spm_units:
46
46
  spm_unit:
@@ -66,7 +66,7 @@
66
66
  people:
67
67
  person1:
68
68
  age: 35
69
- is_ssi_disabled: true
69
+ is_disabled: true
70
70
  self_employment_income: 30_000 # $2,500/month
71
71
  monthly_hours_worked: 160 # Full-time
72
72
  person2:
@@ -102,7 +102,7 @@
102
102
  input:
103
103
  state_code: IL
104
104
  age: 50
105
- is_ssi_disabled: true
105
+ is_disabled: true
106
106
  employment_income: 48_000 # $4,000/month
107
107
  social_security_disability: 4_800 # $400/month
108
108
  spm_unit_cash_assets: 20_000
@@ -124,7 +124,7 @@
124
124
  input:
125
125
  state_code: IL
126
126
  age: 40
127
- is_ssi_disabled: true
127
+ is_disabled: true
128
128
  employment_income: 60_000 # $5,000/month
129
129
  spm_unit_cash_assets: 10_000
130
130
  output:
@@ -143,7 +143,7 @@
143
143
  input:
144
144
  state_code: IL
145
145
  age: 55
146
- is_ssi_disabled: false
146
+ is_disabled: false
147
147
  social_security_disability: 18_000 # $1,500/month SSDI
148
148
  employment_income: 12_000 # $1,000/month part-time
149
149
  spm_unit_cash_assets: 5_000
@@ -170,7 +170,7 @@
170
170
  input:
171
171
  state_code: IL
172
172
  age: 15
173
- is_ssi_disabled: true
173
+ is_disabled: true
174
174
  employment_income: 12_000 # $1,000/month
175
175
  spm_unit_cash_assets: 5_000
176
176
  output:
@@ -0,0 +1,28 @@
1
+ - name: MA joint with STCG losses offsetting LTCG should have zero Part C tax
2
+ absolute_error_margin: 1
3
+ period: 2024
4
+ input:
5
+ people:
6
+ person1:
7
+ age: 40
8
+ short_term_capital_gains: -4_835_234
9
+ long_term_capital_gains: 2_450_480.75
10
+ is_tax_unit_head: true
11
+ person2:
12
+ age: 40
13
+ short_term_capital_gains: -4_835_234
14
+ long_term_capital_gains: 2_450_480.75
15
+ is_tax_unit_spouse: true
16
+ tax_units:
17
+ tax_unit:
18
+ members: [person1, person2]
19
+ spm_units:
20
+ spm_unit:
21
+ members: [person1, person2]
22
+ households:
23
+ household:
24
+ members: [person1, person2]
25
+ state_fips: 25
26
+ output:
27
+ ma_part_c_taxable_income: 0
28
+ ma_income_tax: 0