PolicyEngine / PolicyEngine/microcosm

Dense-arm SSI take-up thresholds: the #508 one-retry protocol does not converge on the full pool

Open
#566 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
0
Forks
4
Avg merge
1d 3h
Merged PRs (30d)
94

Description

Build P2 dense attempts 2→3 (#507 receipts): with attempt 2's delivered-weight basis, attempt 3's bands moved 18–64 +5.8% → +8.2% (worse) and 65+ +24.8% → +20.0% (still 4× the ±5% envelope).

Mechanism: recomputing thresholds changes SSI recipiency, which shifts the ratio-bounded full-pool solve's equilibrium, so the delivered weights the thresholds were computed against are stale again by run's end. The sparse arm converges in one retry because the frozen 57,240-record support pins the equilibrium; the dense arm has no such anchor. The gate mechanically prescribes another basis retry each failure, but a second recomputation is the reconcile loop the #508 design forbids ('recomputed exactly once, no reconcile loop').

Design candidates (each needs adjudication, none is a knob):

  1. Sparse-anchored basis: compute dense thresholds from the certified sparse release's delivered bands (the two arms share the base and target system; the sparse equilibrium is the certified reference).
  2. Fixed-point argument: show the basis→equilibrium map is a contraction on the dense arm and bound the iteration count — would justify a principled multi-step protocol distinct from ad-hoc reconciliation.
  3. Dense-specific envelope: adjudicate whether ±5% is the right contract for the non-default diagnostic arm.

Blocks dense-P2 publication alongside the netCG structural gap (#487-class). Receipts: attempts 2/3 on #507.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the #507 receipts and the #508 one-retry protocol described in the issue. Compare the sparse-anchored basis, fixed-point argument, and dense-specific envelope against the ±5% gate and the dense-arm behavior. Done means one design is adjudicated and the dense-P2 publication block is resolved without an ad-hoc reconcile loop.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
data
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.