STATE: MLB opp_rank_stat live — consumption proven, coverage 8/14, factor inert this slate
This commit is contained in:
@@ -133,6 +133,49 @@ exist locally; harmless, the data restores completely.
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
## 🟢 MLB opp_rank_stat LIVE — computed, CONSUMED, retained (2026-07-20 16:51 UTC)
|
||||||
|
- **Consumption path verified BEFORE wiring** (a value the grader doesn't read
|
||||||
|
is a dead end): `featureCache.teamFeatures` sets `out.opp_rank_stat` →
|
||||||
|
`engine1.computeFactors` READS `features.opp_rank_stat` → fires
|
||||||
|
`weak_opponent_defense` (≥0.70) / `top_opponent_defense` (≤0.30).
|
||||||
|
- **Source:** `mlbStatsAdapter.getTeamPitchingStats` — all 30 teams in ONE free
|
||||||
|
unauthenticated statsapi call. Only fills when the ESPN path yields nothing
|
||||||
|
(always, for MLB), so WNBA is untouched.
|
||||||
|
- **CONSUMPTION PROVEN on the exact retained vector** (Josh Bell hits o0.5),
|
||||||
|
varying only `opp_rank_stat`:
|
||||||
|
|
||||||
|
| opp_rank_stat | grade | factors |
|
||||||
|
|---|---|---|
|
||||||
|
| 0.367 (as retained, mid) | **B-** | l5_hot_vs_line, l20_over_line, back_to_back |
|
||||||
|
| 0.98 (weak) | **B** | + **weak_opponent_defense** |
|
||||||
|
| 0.02 (tough) | **C** | + **top_opponent_defense**, away_vs_top5_defense |
|
||||||
|
| absent | **B-** | identical to mid — neither fires ✅ |
|
||||||
|
|
||||||
|
- **RETAINED** grade-time in `model_snapshots.features` (immutable, joinable).
|
||||||
|
|
||||||
|
### 📊 COVERAGE FIRST — then the grade read
|
||||||
|
**8 of 14 graded MLB rows carried a non-null `opp_rank_stat` (57 %); 6 null.**
|
||||||
|
The nulls are almost certainly unresolved `opponentAbbr` (`teamFeatures` returns
|
||||||
|
early without one), NOT the sample floor — but that is **undetermined without
|
||||||
|
container logs**, so it is reported as such rather than asserted.
|
||||||
|
|
||||||
|
**🔴 THE FACTOR FIRED ON ZERO ROWS THIS CYCLE.** All 8 non-null values were the
|
||||||
|
SAME mid-scale `0.367` (one opponent, neither threshold crossed:
|
||||||
|
`would_fire_weak 0`, `would_fire_tough 0`). **So this slate cannot test
|
||||||
|
A-emission at all** — the factor was present but inert. Any "A didn't emit"
|
||||||
|
reading from tonight is meaningless.
|
||||||
|
|
||||||
|
**Live MLB 11-step distribution (14 graded):** `C+ 4 · F 4 · B- 2 · C 2 · D 2`.
|
||||||
|
**No A.** Notably **F now emits (4 rows)** — the range has widened DOWNWARD, as
|
||||||
|
the restored ±1.0 makes Σδ ≤ −2.51 reachable for the first time.
|
||||||
|
|
||||||
|
**A-rated marketing stays HELD.** No thresholds changed. A genuine test needs a
|
||||||
|
slate with a weak-BAA opponent (≥0.70) so the +1.0 can actually lift a read.
|
||||||
|
|
||||||
|
### Thin-sample floor in production
|
||||||
|
No thin-sample opponent appeared on this slate, so the production null-floor path
|
||||||
|
was **not exercised live** — unit-tested only. Stated rather than implied.
|
||||||
|
|
||||||
## 🟢 HARNESS ARMED + CLOSING CAPTURE STARTED (2026-07-20 ~16:10 UTC)
|
## 🟢 HARNESS ARMED + CLOSING CAPTURE STARTED (2026-07-20 ~16:10 UTC)
|
||||||
Both verified by INDUCING the real code path — never by waiting for a slot.
|
Both verified by INDUCING the real code path — never by waiting for a slot.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user