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
This commit is contained in:
@@ -0,0 +1,119 @@
|
|||||||
|
# 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_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.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 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_source` — `native_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.
|
||||||
Reference in New Issue
Block a user