Skip to content

Child-support expense prevalence: survey-faithful 0.47% vs retired eCPS's drifted 2-3% vs OCSE-implied ~1.5-2% #417

Description

@MaxGhenis

The first full-scale run through the child-support signal gate (Build M base, 2026-07-13) surfaced a substantive modeling question the gate band was hiding.

Measured person-level nonzero shares for child_support_expense:

source share
raw CPS ASEC 2024 (cps_2024.h5) 0.659%
populace Build M base, ASEC channel 0.660%
populace Build M base, PUF tax-detail clone channel (QRF draw) 0.272%
populace Build M base, pooled (~50/50) 0.466%
retired us-data extended_cps_2024.h5 1.990%
retired us-data enhanced_cps_2024.h5 (shipped eCPS) 2.955%
OCSE-implied payer count (~5M noncustodial payers) ~1.5–2% of persons

Three observations:

  1. Our ASEC channel reproduces the survey exactly; our clone-channel draw (0.27%) is covariate-consistent with the trained marginal. The pipeline is faithful to its source.
  2. The retired pipeline inflated prevalence 3–4.5× above the survey marginal it trained on (0.62% → 1.99%/2.96%) — sequential-imputation drift, not a calibrated choice we can find documented. It accidentally landed nearer the OCSE-implied truth.
  3. CPS is known to undercount payers (payer self-report). So survey-faithful ≈ undercount; the eCPS number was drifted; admin-aligned would require deliberate seeding.

Why it matters: child-support expense drives SNAP deductions (and other program interactions). Build M will ship payer incidence ~4–6× lower than the eCPS the world used. Neither number is validated.

Proposed resolution (architecture week): treat payer prevalence like the take-up families — seed to an administrative anchor (OCSE payer/caseload counts) with documented source, rather than inheriting either survey undercount or imputation drift. Decision needed on the anchor series and entity mapping.

Immediate mechanical fix (separate PR): the shared (0.005, 0.15) gate band mislabels the faithful 0.466% as degenerate; splitting the expense floor to 0.003 with this evidence as the fence. Per-channel 0.002 degeneracy floors unchanged.

Related: #399 (family restoration), #416 (near-discrete target modeling).

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions