Skip to content

Rules-engine adoption panel: expected-penalty accounting bounds for all 53 states - #45

Merged
MaxGhenis merged 6 commits into
mainfrom
engine-scenario-data
Aug 12, 2026
Merged

MaxGhenis merged 6 commits into
mainfrom
engine-scenario-data

Conversation

@MaxGhenis

Copy link
Copy Markdown
Contributor

Answers "how does adopting the rules engine affect expected penalty" as a labeled accounting bound, per state, for all 53 jurisdictions.

Data layer

  • analysis/build_engine_scenario.py + app/public/engine_scenario_data.json (186 KB): per-case any_strict/any_broad flags in the exact data.json case order, plus full-precision state shares of official error dollars, for the committed cause classes (strict {17,19,20}: programming, mass change, arithmetic; broad {10,17,19,20,21,22}: + policy misapplied, computer-user, incorrect budgeting).
  • Gates (tests/test_engine_scenario.py): exact 1e-9 reconciliation of shares against analysis/cause_shares.json; 2e-6 bound on shares recomputed from the rounded data.json arrays (observed max 5.7e-7, serialization scale); ordering invariant (data.json arrays reproduce exactly from the source CSV under load_cases filters); byte-deterministic double-build; SHA-256 pin in app.js matches the committed artifact.

App layer

  • New always-visible "Adopting a verified rules engine" panel: per case, zero the flagged error dollars, re-anchor at official × (1 − share), re-run the Monte Carlo through the existing FY 2026 election + delay machinery (FY 2025 stays locked history — adoption flows only through the simulated FY 2026 measurement). Shows class shares, simulated FY 2026 centers on the tier band, expected FY 2028 bill baseline → broad–strict range, pWin shift, FY 2029 line.
  • Delay-clause states get an honest deferral branch: adoption pulls draws below the 13.33% threshold, so billing more often starts in FY 2029 keyed to the lower FY 2026 rate, while deferral keys the first bill to a later, unsimulated year (deferral ≠ forgiveness).
  • Zero-share branch (e.g. NY strict = 0%): stated as "strict bound equals the baseline".
  • National takeaway: summed expected FY 2028 bills $7.67B/yr → $6.23B (broad) – $7.52B (strict) if every jurisdiction adopted.
  • Everywhere labeled: accounting bound under the file's own cause coding, reviewer judgments, not a causal adoption estimate; FY 2024 cause mix assumed for FY 2026.
  • Artifact loads eagerly with SHA-256 + schema verification; integrity failure surfaces in the panel (no silent fallback). ASSET_V → 20260812.

Suite: 185 passed.

🤖 Generated with Claude Code

MaxGhenis and others added 6 commits August 12, 2026 06:47
…ates

Per case, zero the error dollars whose recorded QC cause codes sit in the
committed computing-apparatus classes (strict {17,19,20}; broad
{10,17,19,20,21,22}), re-anchor at official x (1 - class share), and re-run
the Monte Carlo through the FY 2026 election and delay machinery. FY 2025
stays locked history, so adoption flows only through the simulated FY 2026
measurement. Presented as labeled accounting bounds, never causal; the
delay-state branch prices deferral honestly (deferral keys the first bill
to a later, unsimulated year). National takeaway gains the summed
FY 2028 range; artifact is SHA-256-pinned in app.js and locked by test.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
A bound above the baseline is the delay clause, not a higher tier: the
election keys FY 2028 to min(draw, FY 2025), so a lower measured rate can
only reduce the billed tier — the one channel that raises the expected
bill is fewer draws crossing 13.33% and deferring to unsimulated years.
New York (13.18%, 42% baseline deferral odds) rises $630M -> $1.02B under
the broad bound; the copy now states the mechanism instead of calling it
a saving.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
New @sec-adoption composes the @sec-decompose cause classes with the
election and delay machinery: national FY2028 sums 7.67B -> 7.52B
(strict) / 6.23B (broad); the delay-lottery nonmonotonicity (NY 630M ->
1.02B under the broad bound at an unchanged tier); GA's deferral
mechanics; the in-kind distinction from the retired accounting levers.
Abstract clause, decompose forward reference, roadmap consistency fix,
FACTS section M, wrapper -> revision 6 (iframe v=r6-20260812).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The source QC CSV is a local research artifact; CI locks the committed
artifacts (Gate A vs cause_shares.json, Gate B vs data.json, the SHA-256
pin), while the regeneration and ordering gates run locally before the
export is committed — the repo's existing convention for raw-file gates.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@MaxGhenis
MaxGhenis merged commit cbf5acc into main Aug 12, 2026
1 check passed
@MaxGhenis
MaxGhenis deleted the engine-scenario-data branch August 12, 2026 12:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant