Skip to content

Conversation

@daphnehanse11
Copy link

No description provided.

daphnehanse11 and others added 19 commits January 23, 2026 13:16
Analyzes impact of Utah HB 15 (2026) which would repeal Medicaid
expansion if federal matching falls below 85%.

Key findings:
- ~48,000 people lose Medicaid eligibility
- 99% fall into coverage gap (no ACA subsidies available)
- Utah saves ~$32M/year
- Federal government saves ~$285M/year (net of ACA costs)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Instead of importing a structural reform from policyengine-us,
define the reform inline as a simple parameter change:

  gov.hhs.medicaid.eligibility.categories.adult.income_limit.UT
  1.38 -> -inf

This demonstrates that Medicaid expansion repeal for any state
can be modeled with a single parameter change - no custom reform
code needed in the main package.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
HB 15 creates a contingent repeal (only if FMAP < 85%), not an
automatic repeal. Updated docstring and policy context to clarify
this analysis models the scenario where the trigger condition is met.

Also noted what we don't model:
- 60-day implementation window
- 0.15% sales tax repeal

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Investigates why only ~489 people gain ACA eligibility when
~48,000 lose Medicaid under Utah HB 15.

Key findings:
- 77% below 100% FPL -> coverage gap (no ACA available)
- Of those at 100-138% FPL, 76% already have ESI
- Only 24% at 100-138% FPL gain ACA

Notable: Utah sample has 76% ESI rate at 100-138% FPL vs 18%
national average - may warrant further investigation.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Updated both analysis scripts to use the Utah-specific calibrated
dataset from HuggingFace instead of the national CPS.

Key differences with Utah dataset:
- 124,568 losing Medicaid (vs 47,682 with national CPS)
- 28,502 gaining ACA (vs 489)
- 34% ESI rate at 100-138% FPL (vs 76% - much more plausible)
- $99M Utah savings (vs $32M)
- $729M federal savings net (vs $285M)

Dataset: hf://policyengine/policyengine-us-data/states/UT.h5

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
…overage counts

Switch from eligibility-based counts to enrollment-based counts (93% takeup rate)
to better match real-world coverage numbers. Updated both analysis scripts with
corrected figures:
- ~117k losing Medicaid enrollment (down from ~125k eligible)
- ~90.5k falling into coverage gap
- ~26.7k gaining ACA eligibility

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Shows 4 representative households affected by Medicaid expansion repeal:
1. Single adult at 75% FPL → Coverage gap (no options)
2. Single adult at 112% FPL → ACA transition ($11.5k PTC)
3. Single parent + child at 68% FPL → Parent in gap, child keeps Medicaid
4. Married couple + 2 kids at 115% FPL → Parents get ACA ($24k PTC), kids keep Medicaid

Includes note about 2027 work requirements (80+ hrs/month).

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Two new graphs:
1. Side-by-side comparison of health benefits by income (baseline vs reform)
2. Bar chart showing benefit change with coverage gap highlighted in red

Shows the critical 100% FPL threshold where the coverage gap begins.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Teal (#285E61) for Medicaid/primary
- Blue (#0284C7) for ACA PTC
- Dark gray (#344054) for coverage gap/negative
- Medium gray (#9CA3AF) for reference lines
- Light gray (#F2F4F7) for backgrounds/annotations
- Clean sans-serif fonts with proper sizing

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Use Plotly instead of matplotlib (matches web app)
- Gray (gray_600) for baseline/negative values
- Teal (primary_500) for reform/positive values
- Inter font family
- Clean hover templates
- Proper reference lines for FPL thresholds

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Use standard colors (GRAY, BLUE_PRIMARY, TEAL_ACCENT, DARK_GRAY)
- Solid lines for baseline, dotted lines for reform
- Apply format_fig() for consistent styling
- Remove FPL reference lines

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Consolidate imports and colors into first cell
- Remove verbose comments and redundant cells
- Simplify household definitions

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add generate_table_data() function for selected income levels
- Include Child Medicaid/CHIP in parent+child chart
- Use 500 data points via axes feature for smooth visualization
- Update chart colors to match PolicyEngine style

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Extend income range to show full ACA phase-out
- Combine Medicaid + CHIP for child coverage display
- Child transitions: Medicaid ($3,495) -> CHIP ($2,827) -> none

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Utah has parent Medicaid at 46% FPL
- Parents below 46% FPL retain coverage ($6,043) under reform
- Updated income levels to show this distinction

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant