Skip to content

Capital-gains tail donor assignment hard-fails on thin filing-status strata at low rungs #652

Description

@MaxGhenis

Smoke round 4 (1% rung, merged #649 head, authority v6) cleared both gap-fill directions, the PUF predictor preflight, and the QRF chain, then failed at 1,854s in _assign_tail_donors:

ValueError: Insufficient unique, single-tax-unit PUF recipient households for filing status 'SEPARATE'.

(packages/microcosm-build/src/microcosm/build/us_runtime/puf_capital_gains_tail.py:956 — untouched by #649; this is a pre-existing condition first reachable now that everything upstream passes.)

Mechanism (to confirm, not assumed): married-filing-separately is a small share of returns, and at the 1% rung (1,688 ASEC + 15,316 ACS households) the count of unique single-tax-unit recipient households in that stratum appears to fall below the tail's requirement. The contract hard-fails with no receipted-insufficiency path.

Doctrine constraints on the fix (from #624/#616): the tail requirement must not be silently widened or the stratum silently skipped. Candidate shapes:

  1. A declared minimum-support contract per stratum: below threshold → the stratum's tail attachment is skipped with a named, counted insufficient_support receipt in the tail manifest and gate details (the same pattern the by-origin battery uses at 1%).
  2. A declared rung contract: the tail stage requires ≥ some fraction, and lower rungs record a declared-scope receipt instead of running it. Weaker — the tail mechanics then go untested below that rung.

Evidence: _buildo-runtime/out/smoke-f001-verify/ (launcher.log, checkpoints, Logbook row 6eda41f8…, archived in #651). Logbook row for the attempt shows phases through gap_filled.

The 10% dev rung will empirically show whether the stratum has adequate support at 10× scale (run pending local power).

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