# Luna deep analysis — slate 20260905

> Coverage receipt: **COMPLETE** · 9/8 sections; 15/15 games; 6/6 causes; 6/6 sources

# 1. Evidence receipt and gaps

## Sources received

All seven `source_manifest` entries were reviewed:

1. **Prediction review** — loaded; 376,581 bytes; official outcomes and scoring errors.
2. **Forensic deep audit** — loaded; 241,224 bytes; probability, provenance, starter, and decision contracts.
3. **Continuous learning** — loaded; 2,499,160 bytes; stage quality, calibration, probability lineage, score distribution, and starter comparisons.
4. **Detailed report** — loaded; 355,886 bytes; full game and simulation rendering.
5. **Ultra-detailed player audit** — loaded; 30,881,727 bytes; player-level prediction trace.
6. **Structural audit** — loaded; 1,848,251 bytes; invariant findings.
7. **Integrity revision audit** — **missing**; path `/app/output/reports/audit_report_20260905_integrity_revision.html`; intended to provide post-remediation proof for immutable revision artifacts.

## Slate coverage

The evidence reports:

- Expected games: **15**
- Games reviewed: **15**
- Canonical artifacts loaded: **15**
- Continuous-learning games: **15**
- Forensic deep-audit games: **15**
- Starter comparisons: **15**
- Structural audits completed: **15**
- All games structurally audited: **true**
- Slate result: **8 hits, 7 misses**
- Learning eligibility: **eligible**, because all game artifacts passed critical/error structural gates.

The 15 reviewed games were:

`ARI@HOU, ATL@PHI, BOS@BAL, CHC@MIA, DET@CLE, LAA@PIT, MIL@CIN, MIN@CHW, NYY@SD, OAK@SEA, SF@NYM, STL@COL, TB@TEX, TOR@KC, WAS@LAD`.

## Gaps and contradictions

- The **integrity revision audit is missing**. This prevents independent confirmation of the immutable revision-artifact remediation claim.
- The **player feed had no rows for the entire slate**. Consequently, player-level actual-result joins are unavailable for every game. Player-level adjustments are present, but actual player-performance attribution is not independently available.
- No source-labelled moneyline was available. Market agreement was therefore not testable.
- Probability lineage is complete in row coverage, but not contractually complete: three games have material calibrated-to-published deltas without recorded transformations.
- `SF@NYM` is marked `unexplained_material_delta: false` despite its transformation text saying “no recorded transformation explains the publication delta.” Its delta is 1.8578 percentage points, below the causal register’s material threshold of 2 points, so this is a documentation weakness rather than one of the three registered critical failures.
- The “high raw probability” finding is only a **one-slate finding**: 1 hit in 3 games. It is not sufficient by itself to justify a permanent shrinkage rule.
- The simulation produced zero winner flips on this slate, and that behavior has persisted for nine slates. It is therefore not merely a one-slate observation.

---

# 2. Executive diagnosis

## Overall result

The slate achieved:

- **Winner accuracy:** 8/15 = **53.33%**
- **Walk-forward validated baseline:** 55.85%
- **Historical model winner accuracy:** 59.57% in the broader validation block
- **Slate directional cover rate:** 8/15 = **53.33%**
- **Weighted absolute calibration error:** **0.100**
- **High-conviction misses:** 2/5 = **40%**
- **Mean team-run error on losses:** **5.286 runs**
- **Mean total-run bias on losses:** **+1.286 runs**
- **Model margin MAE:** **3.333 runs**
- **Model margin signed bias:** **+1.333 runs**
- **Exact score quality:** weak and materially less reliable than winner quality.

A correct winner does not imply a good prediction. For example:

- `TOR@KC` correctly selected Toronto but predicted **7–5** versus the actual **4–3**; this is explicitly classified as `right_winner_wrong_score`.
- `BOS@BAL` correctly selected Boston but overestimated the total by four runs.
- `WAS@LAD` correctly selected Los Angeles but underpredicted the total by four runs.

## Winner accuracy

Winner performance was weak:

- 8 hits and 7 misses.
- It underperformed the 55.85% walk-forward baseline.
- Cross-slate winner accuracy is marked **regressing**, with mean 56.54% across the nine-slate window and the latest slate at 53.33%.
- The variance stage materially damaged winner direction: `historical_ml → variance_applied` reduced accuracy from 8/15 to 5/15, a **-0.2000** change.
- Enhanced prediction later recovered three winner hits, but recovery does not erase the intermediate regression.

## Calibration quality

Calibration was mixed rather than uniformly defective:

- Weighted absolute calibration error: **0.100**, improving across the nine-slate window.
- The 0.50–0.55 bucket was overconfident: average confidence 0.5302 versus a 0.500 hit rate.
- The 0.55–0.60 bucket was underconfident: 0.5659 versus 0.6667 observed.
- The 0.60–0.65 bucket had one game, confidence 0.6357, and lost.
- The 0.70–0.80 bucket had one game and won.
- The three-game high-raw cluster went 1–2: `CHC@MIA` hit, `LAA@PIT` and `MIL@CIN` missed.
- The data supports a bounded calibration shadow experiment, but not an aggressive permanent shrinkage rule from this slate alone.

## Score accuracy

Score prediction is the clearest persistent model weakness:

- Holdout run-model R² was only:
  - Away runs: **0.020313**
  - Home runs: **0.010614**
  - Total runs: **0.017602**
- The model predicted margins of 2 runs or fewer in **13 of 15 games**, while six actual margins were at least four runs.
- The pipeline’s `embedded_savant_run_environment` stage had:
  - Team-run MAE 2.000
  - Total-run MAE 3.200
  - Margin MAE 3.333
  - Winner accuracy 8/15
- Relative to `historical_ml`, this was a regression of:
  - Team-run MAE: +0.1271
  - Total-run MAE: not separately delta-listed at that stage, but total MAE was 3.2
  - Margin MAE: +0.2750
- The persistent nine-slate finding is not “variance is slightly mis-tuned”; it is that the run model carries almost no validated predictive signal.

## Starter accuracy

Starter projections were a mixed contributor:

- Some misses were driven by severe starter errors:
  - `LAA@PIT`: Yusei Kikuchi projected for 6 ER, allowed 0.
  - `OAK@SEA`: Jeffrey Springs projected for 5 ER, allowed 0.
  - `SF@NYM`: Zac Thornton projected for 1 ER, allowed 6.
- Other games had starter errors of only one run, including `CHC@MIA`, `MIL@CIN`, `MIN@CHW`, `STL@COL`, and `TOR@KC`.
- The lever tension was exactly balanced: **five games helped versus five games hurt**. This does not support a broad starter-weight change without a more targeted experiment.

## Artifact integrity

Structural artifact integrity was strong for the loaded game artifacts:

- Structural audit summary: **0 critical, 0 error, 0 warning, 111 info**.
- Every game’s structural audit passed.
- The saved forecast artifact was explicitly reported as not being the reason for the individual misses.
- However, the missing integrity revision audit remains a receipt gap.
- The three critical probability-lineage cases remain critical contract failures even though the structural artifact audits passed.

## Causal issue register reconciliation

### Critical: unexplained probability publication delta

- **Severity:** critical.
- **Evidence:** three games have unexplained calibrated-to-published deltas of at least two percentage points.
- **Affected games:** `ATL@PHI`, `LAA@PIT`, `WAS@LAD`.
- **Action:** block promotion until the missing transformation is recorded and reconciled.
- **Guardrail:** do not assume the probability governor was bypassed until pick-side math is traced.

The evidence confirms the deltas:

- `ATL@PHI`: calibrated 0.5050, published 0.537979; delta **+3.2979 pp**.
- `LAA@PIT`: calibrated 0.6591, published 0.635729; delta **-2.3371 pp**.
- `WAS@LAD`: calibrated 0.6219, published 0.573431; delta **-4.8469 pp**.

### High: intermediate winner instability

- **Severity:** high.
- **Evidence:** `historical_ml → variance_applied` reduced winner accuracy by 0.2000, or three hits.
- **Affected games:** registered as `NYY@SD`, `SF@NYM`, `TB@TEX`; the transition also changed `MIL@CIN` to a tie.
- **Action:** record exact before-stage and after-stage picks for every affected game.
- **Guardrail:** a later recovery does not make the unstable intermediate stage harmless.

### High: weak run-model signal

- **Severity:** high.
- **Evidence:** away/home/total R² of 0.020313/0.010614/0.017602.
- **Affected games:** all 15.
- **Action:** investigate features and target through an isolated training backtest; do not attempt to solve this with nightly variance tuning alone.
- **Guardrail:** positive but tiny R² does not make exact scores reliable.

### Medium: high raw probability cluster

- **Severity:** medium.
- **Evidence:** only 1/3 raw-probability-at-least-0.65 games won.
- **Affected games:** `CHC@MIA`, `LAA@PIT`, `MIL@CIN`.
- **Action:** monitor across slates and preserve raw-to-calibrated-to-published lineage.
- **Guardrail:** do not create a new per-bucket shrinkage rule from this slate alone.

### Informational: complete slate audit coverage

- **Severity:** info.
- **Evidence:** 15/15 games structurally audited.
- **Action:** retain per-game audit receipts.
- **Guardrail:** complete coverage does not cancel findings within the audited games.

### Informational: simulation inert on slate

- **Severity:** info for this individual slate, but escalated cross-slate.
- **Evidence:** zero flip candidates and zero published flips.
- **Action:** measure simulation contribution across rolling slates, separating score realization from winner flipping.
- **Guardrail:** zero winner flips does not prove zero score-reconciliation work.

---

# 3. Every game

The listed probability is the published probability of the selected side. The confidence edge is the absolute published-side edge from 50%; the raw signed home-minus-away edge is also shown where useful.

## ARI@HOU — correct winner, wrong score

- **Prediction:** ARI 5, HOU 4; selected ARI.
- **Actual:** ARI 4, HOU 3; selected winner correct.
- **Published probability / edge / bucket:** ARI 0.517148; edge 0.03; `toss_up`.
- **Brier:** 0.233146.
- **Errors:** team-run absolute error 2; total bias +2; predicted margin -1, actual margin -1, margin error 0.
- **Starters:** Brandon Pfaadt projected 4 ER/19 outs, actual 3 ER/19 outs; Ethan Pecko projected 4 ER/12 outs, actual 1 ER/13 outs.
- **Edges:** season home-minus-away -0.033; recent +0.706; pitcher +0.014; composite +0.010.
- **Controls:** governor applied; raw probability 0.530; governed 0.5083; starter-experience shrinkage applied because one starter had only three career games; winner unchanged; score volatility `no_change`.
- **Score path:** historical 4.1–5.4, variance baseline 4–5, enhanced/final 5–4.
- **Player adjustments:** no player actual feed; no joined player-level result attribution.
- **Audit:** structural PASS, zero critical/error/warning; forecast artifact clean.
- **Causes:** no miss cause; this was a toss-up that went correctly. The score error was primarily run-model noise and Pecko outperforming his projected ER.

## ATL@PHI — miss

- **Prediction:** ATL 5, PHI 4; selected ATL.
- **Actual:** ATL 2, PHI 4; winner was PHI.
- **Published probability / edge / bucket:** ATL probability 0.462021, edge 0.08; `lean`.
- **Brier:** 0.289421.
- **Errors:** team-run error 3; total bias +3; predicted margin ATL - PHI = +1, actual margin = -2, signed margin error -1 in the margin distribution representation.
- **Starters:** Martín Pérez projected 2 ER/17 outs, actual 4 ER/11 outs; Zack Wheeler projected 3 ER/16 outs, actual 1 ER/18 outs.
- **Edges:** season -0.545; recent -0.510; pitcher +0.002; composite -0.603, all favoring ATL except the negligible pitcher edge.
- **Controls:** raw 0.533406; governed 0.505; no recency guardrail; score volatility `no_change`; large Savant run-environment swing flag.
- **Score path:** historical 4.1–5.4, baseline 4–5, enhanced 5–4, final 5–4. The enhanced stage flipped the selection from PHI to ATL.
- **Player adjustments:** 24 material changes; notable adjustments included Drake Baldwin predicted-AB reduction, Realmuto predicted-hit increase, Edmundo Sosa predicted-AB reduction, Dominic Smith RBI reduction, and Schwarber strikeout reduction.
- **Audit:** structural PASS; probability publication is a registered **critical** lineage defect. No player actuals were available.
- **Primary cause:** mixed, with starter error on both sides and ATL offense overprojection.
- **Secondary cause:** bad winner weighting / confidence direction; the evidence edges favored ATL strongly enough in aggregate, but actual starter outcomes reversed the game.

## BOS@BAL — correct winner, wrong score

- **Prediction:** BOS 5, BAL 4; selected BOS.
- **Actual:** BOS 5, BAL 0; selected winner correct.
- **Published probability / edge / bucket:** BOS 0.532306; edge 0.06; `lean`.
- **Brier:** 0.218738.
- **Errors:** team-run error 4; total bias +4; predicted margin -1 versus actual -5.
- **Starters:** Sonny Gray projected 3 ER/18 outs, actual 0 ER/21 outs; Chris Bassitt projected 3 ER/15 outs, actual 3 ER/17 outs.
- **Edges:** season -0.355; recent +0.254; pitcher +0.005; composite -0.300.
- **Controls:** raw 0.53732; governed 0.5051; recency guardrail applied; score volatility `no_change`.
- **Score path:** historical 5–4, baseline 5–4, enhanced/final 5–4.
- **Player adjustments:** no joined player actuals; player-level attribution unavailable.
- **Audit:** PASS; artifact clean.
- **Causes:** no winner miss. Score miss came mainly from underestimating Boston’s pitching and overestimating Baltimore’s offense.

## CHC@MIA — correct winner and strong score

- **Prediction:** CHC 6, MIA 3; selected CHC.
- **Actual:** CHC 6, MIA 5; winner correct.
- **Published probability / edge / bucket:** CHC 0.73953; edge 0.48; `strong`.
- **Brier:** 0.067845.
- **Errors:** team-run error 2; total bias -2; predicted margin -3 versus actual -1.
- **Starters:** Javier Assad projected 2 ER/15 outs, actual 3 ER/14 outs; Ryan Gusto projected 6 ER/13 outs, actual 5 ER/14 outs.
- **Edges:** season -0.799; recent -0.770; pitcher +0.086; composite -0.984.
- **Controls:** raw 0.7723; calibrated/governed 0.7404; no recency guardrail; high-total-environment lift and supported blowout-margin expansion.
- **Score path:** historical 4–5, baseline 4–5, enhanced/final 6–3.
- **Player adjustments:** no player actuals; no actual player attribution.
- **Audit:** PASS; artifact clean.
- **Causes:** none for winner. This was the strongest call. It is one of the games that would be softened by indiscriminate variance widening or confidence shrinkage.

## DET@CLE — miss

- **Prediction:** DET 3, CLE 4; selected CLE.
- **Actual:** DET 6, CLE 0; winner was DET.
- **Published probability / edge / bucket:** CLE 0.5544; edge 0.11; `moderate`.
- **Brier:** 0.307378.
- **Errors:** team-run error 7; total bias +1; predicted margin CLE +1 versus actual DET +6.
- **Starters:** Framber Valdez projected 2 ER/16 outs, actual 0 ER/21 outs; Parker Messick projected 3 ER/18 outs, actual 3 ER/18 outs.
- **Edges:** season +0.026; recent +0.706; pitcher -0.050; composite +0.262, favoring CLE overall.
- **Controls:** raw 0.58; governed 0.5663; recency guardrail applied; score volatility `no_change`.
- **Score path:** historical 4–5, baseline 4–5, enhanced/final 3–4.
- **Player adjustments:** 22 material changes; notable changes included Petey Halpin strikeout increase, Angel Martínez hit increase, Jo Adell hit increase, Parker Messick strikeout increase, Cade Smith strikeout reduction, and Javier Báez walk increase.
- **Audit:** PASS; artifact clean.
- **Primary cause:** wrong conviction side; the model backed CLE with a real but only moderate 0.11 edge.
- **Secondary cause:** small-edge miss and severe run realization error. This is a key lever-tension game for wider tails.

## LAA@PIT — miss

- **Prediction:** LAA 4, PIT 6; selected PIT.
- **Actual:** LAA 6, PIT 1; winner was LAA.
- **Published probability / edge / bucket:** PIT 0.635729; edge 0.27; `strong`.
- **Brier:** 0.404151.
- **Errors:** team-run error 7; total bias +3; predicted margin PIT +2 versus actual LAA +5.
- **Starters:** Yusei Kikuchi projected 6 ER/14 outs, actual 0 ER/18 outs; Braxton Ashcraft projected 3 ER/19 outs, actual 3 ER/15 outs.
- **Edges:** season +0.909; recent +1.162; pitcher +0.153; composite +1.488, all favoring PIT.
- **Controls:** raw 0.67; governed/calibrated 0.6591; starter-experience shrinkage reduced the probability to published 0.635729; no recency guardrail; volatility `no_change`; large Savant swing flag.
- **Score path:** historical 4.5–6.1, baseline 4–6, enhanced/final 4–6.
- **Player adjustments:** 22 material changes; Kikuchi’s predicted strikeouts were materially adjusted, with notable changes to Oneil Cruz, Bryan Reynolds, Rafael Flores Jr., Zach Neto, Wade Meckler, and Adam Frazier.
- **Audit:** PASS structurally, but **critical probability-lineage defect**: calibrated 0.6591 to published 0.635729 has no recorded material transformation.
- **Primary cause:** starter projection error, especially Kikuchi’s six-ER projection versus zero actual ER.
- **Secondary cause:** wrong high-conviction side. This is a high-raw-cluster loss.

## MIL@CIN — miss

- **Prediction:** MIL 8, CIN 5; selected MIL.
- **Actual:** MIL 3, CIN 5; winner was CIN.
- **Published probability / edge / bucket:** MIL 0.540; edge 0.08; `lean`.
- **Brier:** 0.291600.
- **Errors:** team-run error 5; total bias +5; predicted margin MIL +3 versus actual CIN +2.
- **Starters:** Dustin May projected 3 ER/15 outs, actual 2 ER/11 outs; Andrew Abbott projected 2 ER/15 outs, actual 1 ER/12 outs.
- **Edges:** season -1.666; recent -0.830; pitcher -0.062; composite -1.801, favoring MIL.
- **Controls:** raw 0.7085; calibrated 0.6861; governor input 0.54; recency guardrail applied; it reduced the published pick-side probability to 0.54; supported blowout-margin expansion.
- **Score path:** historical 4.4–3.8, baseline 4–4, enhanced/final 8–5. The variance/enhanced path strongly expanded Milwaukee’s score.
- **Player adjustments:** 27 material changes; notable effects included Andrew Vaughn AB reduction, DL Hall projected-IP change, Luis Lara/Carlos Jorge AB increases, and Jackson Chourio RBI increase.
- **Audit:** PASS; the large probability transformation is recorded as the matchup-recency guardrail, so it is not a lineage bypass.
- **Primary cause:** run-environment overprojection.
- **Secondary cause:** excessive score expansion converted a nominally favorable MIL edge into an overconfident published direction. This is the second high-raw-cluster loss.

## MIN@CHW — correct winner, wrong score

- **Prediction:** MIN 6, CHW 5; selected MIN.
- **Actual:** MIN 6, CHW 4; winner correct.
- **Published probability / edge / bucket:** MIN 0.530; edge 0.06; `lean`.
- **Brier:** 0.220900.
- **Errors:** team-run error 1; total bias +1; predicted margin -1 versus actual -2.
- **Starters:** Taj Bradley projected 5 ER/17 outs, actual 4 ER/15 outs; Anthony Kay projected 4 ER/16 outs, actual 5 ER/13 outs.
- **Edges:** season +0.462; recent +0.298; pitcher -0.040; composite +0.061.
- **Controls:** raw 0.52225; governed 0.5083; recency guardrail applied; volatility `no_change`.
- **Score path:** historical 4–5, baseline 4–5, enhanced/final 6–5.
- **Player adjustments:** no actual player feed; no player-result attribution.
- **Audit:** PASS.
- **Causes:** no winner miss. Score quality was comparatively good. Starter errors were modest and partly offsetting.

## NYY@SD — correct winner, wrong score

- **Prediction:** NYY 4, SD 3; selected NYY.
- **Actual:** NYY 5, SD 1; winner correct.
- **Published probability / edge / bucket:** NYY 0.548506; edge 0.10; `lean`.
- **Brier:** 0.203847.
- **Errors:** team-run error 3; total bias +1; predicted margin -1 versus actual -4.
- **Starters:** Carlos Rodón projected 0 ER/17 outs, actual 1 ER/15 outs; Robbie Ray projected 3 ER/17 outs, actual 5 ER/7 outs.
- **Edges:** season -0.736; recent -0.278; pitcher -0.030; composite -0.720.
- **Controls:** raw 0.5509; governed 0.5499; recency guardrail applied; published probability matched calibrated/governed value; volatility `no_change`.
- **Score path:** historical approximately 4–4, baseline 4–4, variance stage changed NYY to a tie, enhanced restored NYY, final 4–3.
- **Player adjustments:** no player actual feed.
- **Audit:** PASS.
- **Cause relevance:** this game was one of the registered winner-direction regressions at `historical_ml → variance_applied`, although the later enhanced stage recovered the correct winner. This illustrates why later recovery does not erase the unstable transition.

## OAK@SEA — miss

- **Prediction:** OAK 6, SEA 8; selected SEA.
- **Actual:** OAK 6, SEA 2; winner was OAK.
- **Published probability / edge / bucket:** SEA 0.530; edge 0.06; `lean`.
- **Brier:** 0.280900.
- **Errors:** team-run error 6; total bias +6; predicted margin SEA +2 versus actual OAK +4.
- **Starters:** Jeffrey Springs projected 5 ER/12 outs, actual 0 ER/21 outs; George Kirby projected 6 ER/16 outs, actual 3 ER/20 outs.
- **Edges:** season +0.478; recent -0.342; pitcher -0.052; composite +0.424.
- **Controls:** raw 0.53; governed 0.5083; recency guardrail applied; volatility `no_change`; large Savant swing flag.
- **Score path:** historical 4–5, baseline 4–5, enhanced 6–7, final 6–8.
- **Player adjustments:** 23 material changes; notable changes involved Cal Raleigh strikeouts, Henry Bolte RBI, Randy Arozarena RBI, Jonah Heim hits, Taylor Ward strikeouts, Jeff McNeil doubles, and Dominic Canzone doubles.
- **Audit:** PASS.
- **Primary cause:** starter projection; Springs allowed zero rather than the projected five ER.
- **Secondary cause:** run environment overprojection, especially Seattle’s offense. This was a substantial score miss despite only a lean winner edge.

## SF@NYM — miss

- **Prediction:** SF 4, NYM 5; selected NYM.
- **Actual:** SF 9, NYM 5; winner was SF.
- **Published probability / edge / bucket:** NYM 0.523578; edge 0.05; `lean`.
- **Brier:** 0.274134.
- **Errors:** team-run error 5; total bias -5; predicted margin NYM +1 versus actual SF +4.
- **Starters:** Anthony Molina projected 2 ER/9 outs, actual 0 ER/15 outs; Zac Thornton projected 1 ER/17 outs, actual 6 ER/15 outs.
- **Edges:** season +0.183; recent +0.206; pitcher +0.016; composite +0.368, favoring NYM.
- **Controls:** raw 0.531642; governed 0.505; starter-experience shrinkage reduced the intermediate probability; no recency guardrail; high-total-environment lift.
- **Score path:** historical 4.4–4.3, baseline 4–4, enhanced/final 4–5.
- **Player adjustments:** 26 material changes; notable adjustments involved Andrew Knizner, Jonah Cox, Anthony Molina’s projected innings, Zac Thornton strikeouts, Daniel Duarte, Juan Soto, Jared Young, and Bryce Eldridge.
- **Audit:** structural PASS. The lineage text says no recorded transformation, but the 1.8578-point delta is below the registered material threshold, so it is a documentation issue rather than a critical registered breach.
- **Primary cause:** starter projection, particularly Thornton’s 6 actual ER versus 1 projected.
- **Secondary cause:** run environment underprojection; SF scored five more runs than forecast. This game was also an intermediate winner-direction regression at the variance stage before later recovery to NYM, which was still wrong relative to the final outcome.

## STL@COL — miss

- **Prediction:** STL 7, COL 6; selected STL.
- **Actual:** STL 7, COL 10; winner was COL.
- **Published probability / edge / bucket:** STL 0.509201; edge 0.02; `toss_up`.
- **Brier:** 0.259286.
- **Errors:** team-run error 4; total bias -4; predicted margin STL +1 versus actual COL +3.
- **Starters:** Matthew Liberatore projected 4 ER/16 outs, actual 5 ER/13 outs; Mason Adams projected 4 ER/13 outs, actual 3 ER/14 outs.
- **Edges:** season -0.736; recent -0.199; pitcher +0.057; composite -0.509, favoring STL.
- **Controls:** raw 0.53551; governed 0.5083; starter-experience guardrail applied because one starter had only two career games; volatility `no_change`.
- **Score path:** historical 6–5, baseline 6–5, enhanced/final 7–6.
- **Player adjustments:** 22 material changes; notable effects included Bryan Torres and Leonardo Bernal reductions, Joshua Baez RBI increase, Troy Johnston and Connor Norby AB increases, and Jordan Beck adjustment.
- **Audit:** PASS.
- **Primary cause:** toss-up variance.
- **Secondary cause:** small-edge miss and COL offense underprojection. This was not a high-conviction failure.

## TB@TEX — correct winner, wrong score

- **Prediction:** TB 6, TEX 5; selected TB.
- **Actual:** TB 6, TEX 3; winner correct.
- **Published probability / edge / bucket:** TB 0.533459; edge 0.07; `lean`.
- **Brier:** 0.217661.
- **Errors:** team-run error 2; total bias +2; predicted margin -1 versus actual -3.
- **Starters:** Drew Rasmussen projected 3 ER/18 outs, actual 1 ER/21 outs; Jacob deGrom projected 4 ER/15 outs, actual 2 ER/18 outs.
- **Edges:** season -0.589; recent -0.298; pitcher -0.049; composite -0.685.
- **Controls:** raw 0.49725; governed 0.5083; recency guardrail applied; volatility `no_change`.
- **Score path:** historical approximately 4–4, baseline 4–4, enhanced/final 6–5.
- **Player adjustments:** no player actual feed.
- **Audit:** PASS.
- **Cause relevance:** registered as an intermediate winner-direction regression at `historical_ml → variance_applied`, where TB moved to a tie, then recovered at enhanced prediction. The final winner was correct.

## TOR@KC — correct winner, wrong score

- **Prediction:** TOR 7, KC 5; selected TOR.
- **Actual:** TOR 4, KC 3; winner correct.
- **Published probability / edge / bucket:** TOR 0.570; edge 0.14; `moderate`.
- **Brier:** 0.184900.
- **Errors:** team-run error 5; total bias +5; predicted margin TOR +2 versus actual +1.
- **Starters:** Max Scherzer projected 4 ER/15 outs, actual 3 ER/17 outs; Seth Lugo projected 2 ER/15 outs, actual 3 ER/15 outs.
- **Edges:** season -0.491; recent -0.488; pitcher -0.090; composite -0.951.
- **Controls:** raw 0.57; governed/calibrated 0.6202; recency guardrail applied; supported blowout-margin expansion.
- **Score path:** historical 5–4, baseline 5–4, enhanced/final 7–5.
- **Player adjustments:** no player actual feed.
- **Audit:** PASS.
- **Cause:** correct winner but exact-score failure. This is explicitly a `right_winner_wrong_score` game. The score expansion was not supported by the final run total.

## WAS@LAD — correct winner, wrong score

- **Prediction:** WAS 3, LAD 4; selected LAD.
- **Actual:** WAS 5, LAD 6; winner correct.
- **Published probability / edge / bucket:** LAD 0.573431; edge 0.15; `moderate`.
- **Brier:** 0.181961.
- **Errors:** team-run error 4; total bias -4; predicted margin LAD +1 versus actual +1.
- **Starters:** Cade Cavalli projected 4 ER/17 outs, actual 2 ER/18 outs; Tyler Glasnow projected 3 ER/17 outs, actual 4 ER/18 outs.
- **Edges:** season +0.741; recent +0.306; pitcher +0.041; composite +0.753.
- **Controls:** raw 0.61585; governed/calibrated 0.6219; starter-experience shrinkage applied; final published probability 0.573431; volatility `no_change`.
- **Score path:** historical approximately 3–4, baseline 3–4, enhanced/final 3–4.
- **Player adjustments:** no actual player feed.
- **Audit:** structural PASS, but **critical probability-lineage defect**: calibrated 0.6219 to published 0.573431 has no recorded material transformation.
- **Causes:** no winner miss. Exact-score miss was run-environment underprojection. This is another correct-winner/wrong-score game.

---

# 4. Miss reconstruction

## Earliest wrong-direction stage for each loss

### ATL@PHI

- **Earliest wrong-direction movement:** `enhanced_prediction`, which changed the score from PHI 5–ATL 4 at the variance stage to ATL 5–PHI 4.
- **Classification:** bad weighting / winner-direction regression, compounded by starter error.
- **Evidence:** composite edge was -0.603 toward ATL, but actual Pérez allowed 4 ER versus 2 projected and Wheeler allowed 1 versus 3 projected.
- **Not primarily:** artifact failure; structural audit passed.
- **Additional issue:** publication delta was unexplained and critical.

### DET@CLE

- **Earliest wrong-direction stage:** the historical/variance/enhanced path already favored CLE; no later stage corrected it.
- **Classification:** bad weighting plus irreducible/realized offense variance.
- **Evidence:** composite edge +0.262, recent edge +0.706, but DET scored 6 and CLE 0. Valdez allowed zero ER rather than two; Messick matched his ER projection.
- **Run-model failure:** seven team runs of error.

### LAA@PIT

- **Earliest wrong-direction stage:** historical model and all subsequent stages favored PIT.
- **Classification:** starter error, then overconfidence.
- **Evidence:** Kikuchi projected 6 ER and allowed 0. The model’s composite home edge was +1.488, so weighting consistently reinforced PIT.
- **Contract issue:** calibrated-to-published probability change unexplained.
- **Important:** the starter-experience guardrail reduced confidence but did not change the winner.

### MIL@CIN

- **Earliest wrong-direction stage:** `enhanced_prediction`, where Milwaukee was expanded to 8 runs after a 4–4 baseline.
- **Classification:** run-environment miss and bad score weighting; not a major starter miss.
- **Evidence:** actual starters were each only one ER from projection, but Milwaukee scored 3 rather than 8.
- **Important:** the recency guardrail materially reduced the published probability from calibrated 0.6861 to 0.54, and this transformation is recorded.

### OAK@SEA

- **Earliest wrong-direction stage:** the historical and enhanced stages already favored SEA; the Savant environment increased SEA to 8 runs.
- **Classification:** starter projection plus run-environment miss.
- **Evidence:** Springs projected 5 ER and allowed 0; Kirby projected 6 and allowed 3. Actual OAK won 6–2.
- **Model issue:** the run environment did not merely miss the winner; it materially overstated total scoring by six runs.

### SF@NYM

- **Earliest wrong-direction stage:** `enhanced_prediction` moved from a 4–4 baseline to NYM 5–4, and later stages preserved it.
- **Classification:** starter projection plus run-environment underprojection.
- **Evidence:** Thornton projected 1 ER and allowed 6; Molina projected 2 and allowed 0. SF scored 9 rather than 4.
- **Pipeline issue:** variance stage had an intermediate winner-direction regression, later recovered to the wrong final side.

### STL@COL

- **Earliest wrong-direction stage:** historical/variance/enhanced stages favored STL.
- **Classification:** toss-up variance, small-edge miss, and COL offense underprojection.
- **Evidence:** published STL probability was only 0.509201; actual COL won 10–7.
- **Not primarily:** starter error; both starters were within one ER of projection.

## Loss taxonomy

Across the seven losses:

- **Starter projection:** primary in `LAA@PIT`, `OAK@SEA`, `SF@NYM`; materially contributory in `ATL@PHI`.
- **Run-environment overprojection:** primary in `MIL@CIN`; secondary in `OAK@SEA`.
- **Run-environment underprojection:** secondary in `SF@NYM`; also affected `STL@COL` and correct-winner score misses.
- **Wrong conviction side:** explicit in `DET@CLE` and `LAA@PIT`.
- **Toss-up variance:** explicit in `STL@COL`.
- **Bad input:** no direct evidence of malformed team/starter identities; all starter identity matches were true and all structural audits passed.
- **Bad weighting:** evident in the variance/enhanced transitions, especially the 3-hit degradation at `historical_ml → variance_applied`.
- **Irreducible variance:** most defensible for `STL@COL`, and partially for extreme starter outcomes, but not a sufficient explanation for the persistent run-model weakness.

A published home-away confidence edge of **0.12 is moderate**, not a near coin flip. The system’s confidence labels correctly distinguish toss-up, lean, moderate, and strong; a 0.11–0.12 edge should not be treated as negligible.

## Pipeline-stage audit across all stages

| Stage | Winner accuracy | Hits | Team-run MAE | Margin MAE | Assessment |
|---|---:|---:|---:|---:|---|
| historical_ml | 53.33% | 8 | 1.8729 | 3.0583 | Baseline |
| variance_applied | 33.33% | 5 | 1.8333 | 3.0000 | Winner-direction regression |
| enhanced_prediction | 53.33% | 8 | 1.9667 | 3.2667 | Recovered winners, worsened run metrics |
| embedded_savant_run_environment | 53.33% | 8 | 2.0000 | 3.3333 | Further run-model regression |
| fundamental_edge_target_review | 53.33% | 8 | 2.0000 | 3.3333 | No winner recovery |
| capped_target | 53.33% | 8 | 2.0000 | 3.3333 | No change |
| simulation_result | 53.33% | 8 | 2.0000 | 3.3333 | No change |
| published_final | 53.33% | 8 | 2.0000 | 3.3333 | No change |

### Transitions

- `historical_ml → variance_applied`
  - Winner accuracy: **-0.20**
  - Changed direction: `MIL@CIN`, `NYY@SD`, `SF@NYM`, `TB@TEX` to ties.
  - Regressed games recorded: `NYY@SD`, `SF@NYM`, `TB@TEX`.
  - This is the most important intermediate winner-direction defect.

- `variance_applied → enhanced_prediction`
  - Winner accuracy: **+0.20**
  - Recovered: `CHC@MIA`, `NYY@SD`, `TB@TEX`, `TOR@KC`.
  - Regressed: `ATL@PHI`.
  - The recovery improves the final count but does not erase the earlier regression.

- `enhanced_prediction → embedded_savant_run_environment`
  - No winner changes.
  - Margin MAE worsened by 0.0666; team-run MAE worsened by 0.0333.

- All later transitions:
  - No winner changes.
  - No score improvement.
  - `simulation_result → published_final` was inert.

---

# 5. Cross-game counterfactuals

## Lever tension: widen run distributions

**Lever:** `score.variance_multiplier / score.variance_floor`.

### Helps

- `DET@CLE`: lost a 0.11-confidence pick; wider tails could reduce overconfidence in a narrow CLE projection.
- `LAA@PIT`: lost a 0.27-confidence pick; wider tails could better represent starter uncertainty.

### Hurts

- `CHC@MIA`: strong 0.48 edge and correct winner; widening could soften a good call.

### Net evidence

- 2 helps versus 1 hurts.
- The net supports a **small bounded shadow increase**, not an aggressive global change.
- However, persistent weak run-model signal means variance tuning cannot substitute for better predictive features.

## Lever tension: pitcher form weights / prior games

**Lever:** `player.pitcher.v4 form weights / player.pitcher_prior_games`.

### Helps

- `ARI@HOU`: starter ER off by 3.
- `BOS@BAL`: starter ER off by 3.
- `LAA@PIT`: starter ER off by 6.
- `OAK@SEA`: starter ER off by 5.
- `SF@NYM`: starter ER off by 5.

### Hurts

- `CHC@MIA`, `MIL@CIN`, `MIN@CHW`, `STL@COL`, `TOR@KC`: starter projections were each only one ER off, so broad reweighting could degrade already adequate cases.

### Net evidence

- Exactly 5 helps versus 5 hurts.
- No broad parameter move is supported. A targeted starter-form diagnostic or shadow split is preferable.

## Lever tension: recent/season run-mean weighting

**Lever:** `recent.* / season.* run-mean weighting`.

### Helps

- `BOS@BAL`: team-run error 4.
- `DET@CLE`: team-run error 7.
- `LAA@PIT`: team-run error 7.
- `MIL@CIN`: team-run error 5.
- `OAK@SEA`: team-run error 6.
- `SF@NYM`: team-run error 5.
- `STL@COL`: team-run error 4.
- `TOR@KC`: team-run error 5.
- `WAS@LAD`: team-run error 4.

### Hurts

- `ARI@HOU`, `CHC@MIA`, `MIN@CHW`, `TB@TEX`: team-run errors were only 1–2, so changing means risks disturbing good score estimates.

### Net evidence

- 9 helps versus 4 hurts.
- The net favors investigation and a bounded shadow experiment, but the near-zero holdout R² means the correct response is feature/target work, not simply increasing recency or season weights.

## Tempting one-game fixes that should not be made

- Do not reverse all moderate picks because `DET@CLE` lost. The 0.11 edge is moderate, not a near coin flip.
- Do not globally suppress strong probabilities because `LAA@PIT` lost; `CHC@MIA` was a strong, accurate call.
- Do not broadly reweight starters from `LAA@PIT`, `OAK@SEA`, or `SF@NYM`; five games had good starter projections.
- Do not remove score expansion entirely because `MIL@CIN` and `OAK@SEA` overprojected runs; `CHC@MIA` benefited from a strong score-tail adjustment.
- Do not tune the simulation to force winner flips. Its nine-slate persistence requires a code/diagnostic fix, not outcome-specific intervention.
- Do not treat a later winner recovery as evidence that the variance stage is safe.

---

# 6. Data and contract defects

## Critical findings

1. **Unexplained probability publication delta**
   - `ATL@PHI`: +3.2979 pp.
   - `LAA@PIT`: -2.3371 pp.
   - `WAS@LAD`: -4.8469 pp.
   - Required action: block promotion until each transformation is recorded and reconciled.

2. **Missing integrity revision audit**
   - The manifest explicitly marks the integrity revision audit as missing.
   - This is a source-receipt gap, even though the loaded structural audits passed.

## Error findings

- No structural audit errors were reported.
- Structural audit summary: **0 errors**.

## Warning findings

- No structural audit warnings were reported.
- Structural audit summary: **0 warnings**.

## Informational findings

- Structural audit summary contained **111 informational findings**.
- Every game’s audit reported zero critical/error/warning findings, with either 100 or 101 “good” checks and 7 or 8 informational notes.
- The player feed had no rows for the slate, preventing actual player-level attribution.
- No source-labelled market data was available.
- Simulation flip candidates and published flips were both zero.

## Prediction-model defects versus artifact bugs

### Prediction-model/process defects

- Near-zero run-model holdout signal.
- Winner-direction regression at the variance stage.
- Persistent simulation inertness.
- Starter projection instability in several specific games.
- Run-environment over- and under-dispersion.
- High raw-probability cluster underperformance, currently only a medium one-slate finding.

### Presentation/artifact/contract defects

- Three material calibrated-to-published probability deltas have no recorded transformation.
- The missing integrity revision audit is a receipt/verification defect.
- `SF@NYM` has a smaller undocumented delta: its transformation text says no recorded transformation, but the delta is below the material threshold.
- These contract defects are distinct from the model’s poor run accuracy.

## Coverage reconciliation

The coverage matrix says the slate is fully covered:

- 15 expected and 15 audited.
- 15 canonical artifacts loaded.
- 15 starter comparisons.
- 15 continuous-learning records.

Therefore, the slate is **coverage-complete but not contract-clean**. Full coverage does not permit calling the slate clean because three probability-lineage defects remain.

## Complete pick-side probability lineage

The expected path is:

`raw model → calibrated → governor → score coherence/recency → published`.

Material examples:

- `CHC@MIA`: raw 0.7723 → calibrated/governed 0.7404 → published 0.73953. Transformation recorded; no bypass.
- `MIL@CIN`: raw 0.7085 → calibrated 0.6861 → governor input 0.54 → governed/published 0.54 after matchup-recency guardrail. Large delta is recorded; not a bypass.
- `ARI@HOU`: raw 0.5085 → governor input 0.53 → calibrated/governed 0.5083 → published 0.517148 after score coherence/recency. Recorded.
- `ATL@PHI`: calibrated 0.5050 → published 0.537979 with no recorded transformation. **Bypass/contract failure cannot be conclusively called a governor bypass, but the publication transformation is missing.**
- `LAA@PIT`: calibrated 0.6591 → published 0.635729 with no recorded material transformation. Same conclusion.
- `WAS@LAD`: calibrated 0.6219 → published 0.573431 with no recorded material transformation. Same conclusion.
- `SF@NYM`: calibrated 0.5050 → published 0.523578; text says no recorded transformation, but delta is 1.8578 pp and therefore below the registered material threshold.

The evidence supports calling a **material undocumented transformation**, not asserting a governor bypass without further math tracing.

---

# 7. Cross-slate persistence

The trend window contains nine slates: 2026-08-28 through 2026-09-05, with eight prior slates loaded.

## Finding streaks

- `high_raw_probability_cluster`: consecutive count **1**; present now. Not established across slates.
- `pipeline_winner_instability`: consecutive count **1**; present now. It is current but not yet persistent by the registered streak count.
- `score_margin_compression`: consecutive count **0**; not present now, despite three incidences in the nine-slate window.
- `simulation_inert_on_slate`: consecutive count **9**; present now and escalated. Established failure, not single-slate noise.
- `single_slate_calibration_instability`: consecutive count **0**; not present now.
- `weak_run_model_signal`: consecutive count **9**; present now and escalated. Established failure, not single-slate noise.

## Escalated findings

### Simulation inertness

- **Streak:** 9 consecutive slates.
- **Target lever:** `simulation.allow_score`.
- **Metric harmed:** team-run MAE and total-run MAE; also prevents meaningful simulation-based winner intervention.
- **Direction:** confirm the simulation module is actually running and not silently no-oping.
- **Interpretation:** this is a code/diagnostic failure, not evidence for a parameter increase.

The self-assessment identifies a likely root cause: the simulation uses draws selected while searching for a target-realizing play-by-play, exits early with roughly two draws, and then treats those selected draws as a probability distribution. That makes the win-rate estimate vacuous.

### Weak run-model signal

- **Streak:** 9 consecutive slates.
- **Target levers listed:** `training.xgb.n_estimators`, `training.xgb.max_depth`, `training.xgb.learning_rate`.
- **Metric harmed:** team-run MAE and total-run MAE.
- **Direction:** investigate features and target using an isolated training backtest.
- **Guardrail:** the finding explicitly says not to force a nightly parameter move; the issue is feature/target quality, not a simple hyperparameter shortage.

The self-assessment recommends adding, where legitimately available:

- source-labelled no-vig market probability,
- park/weather run environment,
- bullpen rest/fatigue,
- platoon-adjusted lineup quality,

then retraining under a new model schema version and comparing same-fingerprint holdout R².

## Metric trends

- `margin_bias`: **improving**. Series ended at -1.467 after a worse earlier period.
- `mean_team_run_error_on_losses`: **improving**. Latest 5.286, though still materially high.
- `weighted_calibration_error`: **improving**. Latest 0.100, down from several earlier values above 0.20.
- `winner_accuracy`: **regressing**. Latest 0.5333; nine-slate mean 0.5654.
- `top_confidence_pick` loss streak: **0**.
  - 2026-08-28 hit
  - 2026-08-29 hit
  - 2026-08-30 miss
  - 2026-08-31 hit
  - 2026-09-01 miss
  - 2026-09-02 miss
  - 2026-09-03 miss
  - 2026-09-04 hit
  - 2026-09-05 hit

The top-confidence pick has had intermittent misses but no current consecutive-loss streak.

---

# 8. Adjustments for today

Recommendations are ranked by persistence, scope, expected metric effect, and regression risk.

## 1. Fix and independently validate the simulation path — highest evidence strength

- **Pattern:** simulation inertness, nine consecutive slates.
- **Registered lever:** `simulation.allow_score`, but this should not be used as a blind parameter move.
- **Bounded change:** code/diagnostic action rather than parameter tuning:
  - verify the simulation module executes;
  - separate target-realization search from independent winner-probability simulation;
  - use an independent, unsteered batch of approximately 200–500 draws or a closed-form run-difference calculation;
  - remove the early exit from the probability batch;
  - log before-stage and after-stage winner probabilities.
- **Expected metric:** improve the diagnostic value of simulation; reduce winner-direction opacity and potentially improve team-run/total-run MAE.
- **Helps:** games with unstable intermediate winner direction, especially `NYY@SD`, `SF@NYM`, and `TB@TEX`.
- **Hurts/risk:** an independent simulation may soften a good strong call such as `CHC@MIA`; therefore use a shadow result and rollback monitor.
- **Rollback monitor:** no promotion unless independent-simulation contribution improves rolling winner Brier or score reconciliation without increasing team-run MAE.

## 2. Run the persistent run-model feature/target backtest — high evidence strength

- **Pattern:** weak run-model signal, nine consecutive slates.
- **Registered parameters:** `training.xgb.n_estimators`, `training.xgb.max_depth`, `training.xgb.learning_rate` are listed, but the recommended action is not a blind nightly move.
- **Bounded change:** perform an isolated same-fingerprint backtest after adding or validating park/weather, bullpen fatigue, platoon-adjusted lineup quality, and legitimately source-labelled market features.
- **Expected metrics:** increase away/home/total holdout R² and reduce team-run and total-run MAE.
- **Helps:** the broad score-error group, especially `DET@CLE`, `LAA@PIT`, `MIL@CIN`, `OAK@SEA`, `SF@NYM`, `TOR@KC`, and `WAS@LAD`.
- **Hurts/risk:** could disturb already-close score forecasts in `MIN@CHW`, `ARI@HOU`, `CHC@MIA`, and `TB@TEX`.
- **Rollback monitor:** require out-of-sample improvement in all three run targets or at least no degradation in winner Brier before adoption. Bump the model schema version when feature semantics change.

## 3. Shadow a small confidence-cap reduction for the current high-raw cluster — lower evidence strength

- **Pattern:** high raw probability cluster, one consecutive slate only; 1/3 hit.
- **Exact registered parameter:** `confidence.base_cap`.
- **Bounded change:** reduce `confidence.base_cap` by **0.02** in shadow mode only.
- **Expected metric:** lower calibration error and possibly improve Brier score by reducing overstatement in `LAA@PIT` and `MIL@CIN`.
- **Helps:** `LAA@PIT`, `MIL@CIN`, and potentially moderate/high conviction misses such as `DET@CLE`.
- **Hurts:** `CHC@MIA`, where the 0.48 edge was correct and could be unnecessarily softened.
- **Rollback monitor:** because this finding has only a one-slate streak, revert if rolling Brier or weighted calibration error worsens over the next registered evaluation window.
- **Do not simultaneously alter multiple confidence caps**, because that would make attribution impossible.

No direct starter-weight change is recommended today: the pitcher lever is 5–5 in cross-game tension, and the evidence does not support a net direction.

---

# 9. Bottom line

## Known

- The slate was fully covered structurally: 15/15 games, 8 winners correct.
- Winner accuracy was only 53.33%, below the 55.85% walk-forward baseline.
- Exact-score performance was weak, with near-zero validated run-model R² and a 3.333-run margin MAE.
- The variance stage caused a measurable three-hit winner-direction regression before later recovery.
- Seven games were missed; the most consequential concrete errors were severe starter projection failures in `LAA@PIT`, `OAK@SEA`, and `SF@NYM`, plus run-environment overprojection in `MIL@CIN`.
- Two critical probability-lineage defects are not merely theoretical: `ATL@PHI`, `LAA@PIT`, and `WAS@LAD` each have material unexplained calibrated-to-published deltas.
- Simulation inertness and weak run-model signal are established nine-slate patterns.
- Calibration and margin bias are improving, but winner accuracy is regressing.

## Uncertain

- The exact code path producing the three material probability publication deltas is not established; the evidence shows missing transformations, not conclusively a governor bypass.
- Player-level actual attribution is unavailable because the slate-wide player feed contained no rows.
- The individual starter misses may include irreducible variance, but their recurrence and magnitude justify targeted diagnostic work.
- The one-slate high-raw cluster does not establish a permanent confidence-shrinkage rule.

## Single safest next action

**Run the operator-level simulation diagnostic and contract reconciliation before promoting another slate:** independently verify that the simulation executes with an unsteered probability batch, and trace every calibrated-to-published probability transformation for `ATL@PHI`, `LAA@PIT`, and `WAS@LAD`. This is safer than tuning scores or confidence because it addresses an established code/process failure and the registered critical publication defects without weakening the proven strong call in `CHC@MIA`.
