Skip to content

Dense arm fails input-mass parity on miscellaneous_income (−58%); Build M dense needs a target-side remedy #393

Description

@MaxGhenis

Summary

The Build J-vintage dense arm (337,704 households, full pool, no-L0) fails exactly one hard gate: input mass parity on miscellaneous_income at −58.0% (export frame $19.92B vs reference $47.40B; band ±50%, $1B floor). All 34 other export columns pass; the release tooling correctly refused to emit release_manifest.json/H5. Build M's dense re-run must carry a remedy — this issue is the runbook entry.

Evidence (staging run 2026-07-10, release id populace-us-2024-buildj-dense-warmstart-c10f7bb-20260710T231332Z)

  • Calibration quality is NOT the problem: final_loss 0.039657 (beats Build H dense 0.04018), within-10% 87.03%, ESS 65,959, coverage gate 70/70 PASS including the restored SCF asset and SNAP work-requirement columns.
  • The failure is a robust property of the optimum, not a convergence artifact: cold direct solve −54.1% → 1500 warm-start epochs improve total loss but push misc further out to −58.0%.
  • Dense-vs-sparse inversion vs Build H: Build J sparse holds misc +11.46% (in band) while dense fails; Build H was the reverse. The Build-J-specific driver is the newly restored input columns adding competing structure the full-pool solve satisfies at misc's expense — misc's SOI Table 1.4 target ("other income less loss", ~$52.84B aged) is sign-unstable and low-weight in the 5,534-spec surface.

Non-remedies (ruled out)

  • Reviewed exclusion: not eligible — the reference mass ($47.4B) sits near the SOI target ($52.84B), so the band is achievable in principle.
  • --allow-input-mass-drift: gate bypasses are exactly what the campaign exists to eliminate.

Candidate remedies for Build M dense

  1. Raise the loss weight on the miscellaneous_income target family so the full-pool solve cannot trade it away (calibration-config change; measure the cost to other targets).
  2. Band-aware penalty: add the export-mass band itself as a soft constraint for sign-unstable SOI net concepts.
  3. If neither holds the band, split the net target into gross/loss legs so the solver stops exploiting sign cancellation.

Full run report (stage timings, RSS profile, shas) is preserved in the staging release dir alongside input_mass_parity.json.

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