Files
vyndr/specs/restamp-a.md
T
builtbykev f67245e1e5 Re-stamp A: 862 rows recovered by honest join (not 936 -- see deviation)
Database only; no application code changed, so the served path, champion
and reference ruler are byte-identical.

RESULT: 862 rows re-stamped from the takeable LOCK-TIME price in
lock_lines, 862/862 now anchored to takeable books, tagged
price_source='archive_restamp', quarantine lifted. 812 pending clean rows
recovered into the accruing verdicts. Holdout verification: 2,792 rows,
862 re-stamped included, 0 re-stamped rows non-takeable, 144 still
excluded, 0 quarantined rows leaked, and 0 NON-TAKEABLE rows remain in the
holdout population since 2026-08-01.

DEVIATION, stated rather than buried: the order authorised 936. That
figure came from a takeable book posting the same LINE. Requiring what a
re-stamp actually needs -- that book's price for the GRADED SIDE at LOCK
TIME -- resolves 862. Of the other 74, 73 have a takeable side-price only
OUTSIDE the lock window and 5 are genuinely one-sided markets.

I did not widen the window to reach 936. A takeable price captured hours
after the grade is a later market moment, not a lock price; substituting it
is precisely the reconstruct-vs-join line this order was fenced against,
and it would have been invisible in the totals -- showing only as a
cleaner-looking 936.

Those 74 were also RE-TAGGED, because their old label had become a lie:
recoverable_same_line -> no_takeable_lock_price_for_side. A future attempt
reading the old tag would have been invited to widen the window and call it
recovery.

takeable was RECOMPUTED from the recovered price rather than carried over
-- the old flag was computed FROM the contaminated price and was wrong on
its own terms. 101 rows had their flag change, which is the direct measure
of how wrong it was.

Provenance travels with the data (price_source), on the same principle as
is_proxy: a value recovered by a later join is not identical in kind to one
captured natively at grade time, even when it is the same number.

EVIDENCE FOR THE NEXT ORDER'S INVARIANT: 5 of the excluded rows are
one-sided TAKEABLE markets, and betrivers/hardrockbet legitimately quote
one side only. A guard that inferred takeability from price shape would
throw away real markets while still admitting a DFS book at -119 --
takeability is book IDENTITY, never price extremity or one-sidedness.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QJs13VsyiSKYQP6rj3NNmc
2026-08-02 16:22:06 -04:00

4.7 KiB
Raw Blame History

RE-STAMP A — 862 ROWS RECOVERED BY HONEST JOIN

Date: 2026-08-02 · served path, champion and reference ruler byte-identical (no application code changed) · database only.


RESULT

rows books settled pending
RE-STAMPED (price_source='archive_restamp') 862 862/862 takeable, 0 non-takeable 47 812
still quarantined 144 0 takeable 0 143

Holdout verification, exactly as the committed scripts select:

holdout rows total ................................. 2,792
  re-stamped rows INCLUDED ......................... 862
  re-stamped but non-takeable (must be 0) .......... 0
still excluded ..................................... 144
quarantined rows leaked into holdout (must be 0) ... 0
NON-TAKEABLE rows in the holdout since 2026-08-01 .. 0

812 pending clean rows recovered into the accruing verdicts, and the contamination is fully out of the measurement population.


🔴 862, NOT 936 — a deviation worth stating plainly

The order authorised 936, from the earlier finding that a takeable book posted the same LINE. Requiring what a re-stamp actually needs — that takeable book's price for the GRADED SIDE, at LOCK TIME — resolves 862.

Why the other 74 were left out:

reason rows
takeable side-price exists only OUTSIDE the lock window 73
genuinely one-sided takeable market 5

(overlapping; 74 distinct)

I did not widen the window to reach 936. A takeable price captured hours after the grade is a later market moment, not a lock price. Substituting it would be exactly the reconstruct-vs-join line this order was fenced against — and it would have been invisible in the totals, showing only as a cleaner-looking 936.

Those 74 were also re-tagged, because their old label had become a lie: recoverable_same_lineno_takeable_lock_price_for_side. A future attempt reading the old tag would have been invited to widen the window and call it recovery.


THE JOIN

Same player_key + stat + game_date + LINE, takeable books only, from lock_lines (lock time — not closing_captures, which is the wrong moment for a lock price). Where several takeable books locked the same prop, the latest lock at or before the grade, deterministically.

takeable was RECOMPUTED, not carried over — the old flag was computed from the contaminated price and was wrong on its own terms. 101 rows had their flag change, which is the direct measure of how wrong it was.

Four distinct takeable books supplied the recovered prices.

PROVENANCE

price_sourcenative_takeable vs archive_restamp — travels with the data, on the same principle as is_proxy on the opportunity axis.

A value recovered by a later join is not identical in kind to one captured natively at grade time, even when it is the same number. Any future bias check can segment on it; NULL predates the distinction and claims nothing.

WHAT STAYS OUT — 144 rows

tag rows
no_takeable_lock_price_for_side 74
no_takeable_quote 49
takeable_line_differs 21

Re-stamping any of these would invent a lock price, or a line, we never captured. None has settled, so nothing is lost from the record — only 143 pending rows stay out of the holdouts, honestly.


NEXT

(b) Combined structural-hardening order — shared, tested guards for:

  • Number(null) === 0 → unknown ≠ zero (6× recurring, most recently in my own new module).
  • Takeable by BOOK IDENTITY, never by price extremity or one-sidedness. This audit produced direct evidence for that invariant: 5 of the excluded rows are one-sided takeable markets, and betrivers/hardrockbet legitimately quote one side only. A thin, juiced or one-sided takeable market is REAL, not contamination — and a guard that inferred takeability from price shape would throw away real markets while still admitting a DFS book at 119.

(c) hits — inherits both guards, and must model thin/one-sided takeable markets as a normal state, not a clean two-sided assumption.

Carry-forward: tb-v1 verdict · third pre-registered branch · 524 ≠ failure (100s Cloudflare origin timeout vs a ~115s snapshot; the work completes).

TAGS

VERIFIED: 862 re-stamped, 862/862 takeable · 0 non-takeable in the holdout since 2026-08-01 · 0 quarantined rows leaked · 144 still excluded · 101 takeable flags corrected · 812 pending rows recovered.

DEVIATION: 862 not 936 — the 74 lack a takeable LOCK-TIME price for the graded side; the window was not widened to reach the authorised number.