Skip to content

Illinois HBWD premium: encode the 21 x 21 premium table instead of adding earned and unearned components #10471

Open

Description

@hua7450

Problem

il_hbwd_premium adds two one-dimensional scales: an earned-income component (gov.states.il.hfs.hbwd.premium.earned) and an unearned-income component (.unearned). The premium table in 89 Ill. Adm. Code 120.510(n)(3) and the HFS HBWD Premium Chart is a 21 × 21 grid: rows are countable earned income bands (0-250, 251-500, … 4751-5000, 5000+) and columns are gross unearned income bands. The grid is not additive.

The scales take the first column (earned) and the first row (unearned). Their sum reproduces 435 of the 441 chart cells and 434 of the 441 regulation cells. Six cells are $1 off in both the regulation and the chart:

Earned income band Unearned income band Regulation and chart Model (earned + unearned)
251-500 751-1000 63 62 (6 + 56)
501-750 251-500 31 32 (13 + 19)
501-750 501-750 50 51 (13 + 38)
751-1000 501-750 56 57 (19 + 38)
1001-1250 1501-1750 137 138 (25 + 113)
1501-1750 2251-2500 206 207 (38 + 169)

Example: $600 of countable earned income and $300 of gross unearned income a month is $31 in the table and $32 in the model.

The seventh regulation cell, earned 1251-1500 with unearned 501-750, is 79 in the regulation and 69 in the chart; the model gives 69 (31 + 38). That is a source conflict, recorded as candidate us-il:hbwd-premium-earned-1251-unearned-501-cell in source_conflicts/candidates.yaml (#10372); the encoded table should follow its ruling.

Proposed fix

Follow policyengine_us/variables/gov/states/ar/ee/aeo/liheap/payment/ar_liheap_matrix_amount.py:

  • two band-index scales (earned and unearned) keyed at the band starts that Key Illinois HBWD premium bands at the chart's band starts #10372 introduces (0, 251, 501, … 4,751, 5,001), each returning a band index 0-20;
  • one 21 × 21 premium matrix parameter, p.matrix[earned_band][unearned_band], transcribed from 120.510(n)(3) and checked cell by cell against the HFS chart;
  • YAML cases for each of the six cells above and the corner cells (both $0, both above $5,000).

Related

Activity

  1. hua7450 commented on Oct 27, 2026

    @hua7450
    CollaboratorAuthor

    The 79-versus-69 cell is ruled: the regulation's 79 (ruling on #10372, 2026-10-27). Under "Regulations are law" 89 Ill. Adm. Code 120.510(n)(3) binds, and the written canons have no exception for an apparent typesetting error. The candidate us-il:hbwd-premium-earned-1251-unearned-501-cell is now state: ruled with follows: conflicting-source.

    This issue is unblocked. The encoded 21 x 21 table should give 79 for countable earned income 1251-1500 with gross unearned income 501-750, following the regulation, and 69 should appear nowhere for that cell. Once the table merges, set the candidate's follows to statute (the regulation's reading) or move it to the register, as the source-conflict process requires.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions