# Luna deep analysis — slate 20260902

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

# 1. Evidence receipt and gaps

## Source manifest

All seven manifest entries were reviewed as evidence records:

| Source | Status | Size | Purpose |
|---|---:|---:|---|
| `prediction review` — `/app/output/reports/prediction_review_20260902.json` | Loaded | 372,146 bytes | Official outcomes and scoring errors |
| `forensic deep audit` — `/app/output/reports/PREDICTION_SYSTEM_DEEP_AUDIT_20260902.json` | Loaded | 240,269 bytes | Probability, provenance, starter, and decision contracts |
| `continuous learning` — `/app/output/learning/continuous_learning_daily_20260902.json` | Loaded | 1,925,532 bytes | Pipeline-stage quality, calibration, probability lineage, score distribution, starter comparisons |
| `detailed report` — `/app/output/reports/detailed_20260902.html` | Loaded | 352,626 bytes | Full game and simulation rendering |
| `ultra detailed player audit` — `/app/output/reports/20260902_ultra_detailed_player_audit.html` | Loaded | 30,625,934 bytes | Player-level prediction trace |
| `structural audit` — `/app/output/reports/audit_report_20260902.html` | Loaded | 1,878,790 bytes | Invariant findings |
| `integrity revision audit` — `/app/output/reports/audit_report_20260902_integrity_revision.html` | **Missing** | Not supplied | Post-Luna remediation proof for immutable revision artifacts |

The missing integrity-revision audit is a genuine evidence gap. It prevents independent confirmation that any post-generation remediation or immutable revision process was correctly recorded.

## Game coverage

All 15 expected games were reviewed:

1. ATL@WAS  
2. BAL@COL  
3. CHW@HOU  
4. DET@MIN  
5. MIA@KC  
6. MIL@CHC  
7. NYM@TB  
8. NYY@LAA  
9. OAK@TEX  
10. PHI@ARI  
11. SD@CIN  
12. SEA@BOS  
13. SF@PIT  
14. STL@LAD  
15. TOR@CLE  

Coverage is complete according to the matrix:

- Expected games: 15
- Canonical artifacts loaded: 15
- Continuous-learning games: 15
- Forensic deep-audit games: 15
- Structural audits completed: 15
- Starter comparisons: 15
- All games structurally audited: true

The slate was therefore fully covered, but it was not defect-free.

## Internal gaps and contradictions

1. **Missing integrity revision audit.** The manifest marks the post-Luna immutable-revision proof as missing.
2. **SF@PIT probability lineage defect.** The causal register identifies one unexplained calibrated-to-published delta of at least two percentage points, affecting SF@PIT. Its published probability was 0.54559 versus calibrated probability 0.5223, a +2.329 percentage-point delta, with `unexplained_material_delta: true`.
3. **MIA@KC minor lineage inconsistency.** The record says “no recorded transformation explains the publication delta,” but marks `unexplained_material_delta: false`. The delta is only +0.9808 percentage points, below the material threshold, so this is a traceability warning rather than the critical SF-type defect.
4. **Pipeline-stage accounting needs careful interpretation.** `variance_applied → enhanced_prediction` reduced winner accuracy from 9/15 to 5/15, a four-hit regression. The transition lists nine direction changes, of which one improved ATL@WAS and five are explicitly classified as regressions; three additional changes were recoveries or non-loss changes. The causal register correctly focuses on the net four-hit degradation, but the full flip list must remain in the trace.
5. **Player-level actuals are unavailable for all games where `player_level_forensics.available` is false.** Player adjustments are recorded, but post-game player-level attribution cannot be independently verified for those games.
6. **Structural-audit totals differ in composition by game.** The slate total is 0 critical, 0 error, 2 warnings, and 110 informational findings. Two games carry warnings; the remainder pass structurally. This does not invalidate the model findings.

---

# 2. Executive diagnosis

## Overall result

- Winner accuracy: **5/15, 33.33%**
- Misses: **10/15**
- Mean team-run error on losses: **6.4 runs**
- Mean total-run bias on losses: **−2.0 runs**, indicating net underprediction of scoring among losses
- Predicted margins: all 15 were **two runs or less**
- Actual margins: 8/15 were **four runs or greater**
- Mean predicted margin: **1.20**
- Mean actual margin: **4.27**
- Validated holdout run-model R²: home **0.0300**, away **0.0214**, total **0.0287**
- Published confidence calibration error: weighted absolute calibration error **0.2100**

This was not merely a bad-score slate. The published winner layer also failed materially, and an intermediate model stage degraded winner direction.

## Winner accuracy

The published system correctly selected five winners:

- ATL@WAS
- CHW@HOU
- MIA@KC
- MIL@CHC
- NYY@LAA

It missed ten.

The historical ML stage would have selected 11/15 correctly. After `variance_applied`, accuracy fell to 9/15. After `enhanced_prediction`, it fell further to 5/15. All later stages remained at 5/15.

That makes the most important winner-direction finding the **high-severity pipeline instability** at `variance_applied → enhanced_prediction`. This is a material model/process risk, not an artifact issue.

## Calibration quality

Published confidence was materially overconfident:

- Bucket 0.50–0.55: average confidence 0.5334, observed hit rate 0.4000, calibration error +0.1334
- Bucket 0.55–0.60: average confidence 0.5632, observed hit rate 0.2000, calibration error +0.3632
- Combined weighted absolute calibration error: **0.2100 across 15 settled games**

The two moderate-confidence buckets performed especially poorly. The evidence supports bounded empirical shrinkage experiments, but the causal register correctly warns against treating one slate as a stable calibration curve. Cross-slate evidence later establishes this as a persistent pattern.

No high-raw-probability cluster was present: threshold 0.65, games 0, hits 0.

## Score accuracy

Score accuracy was the weakest broad model dimension.

- Every published prediction had a margin of 1 or 2 runs.
- Eight actual margins were at least 4 runs.
- The largest underestimates were:
  - TOR@CLE: predicted margin 1, actual 11, error −10
  - ATL@WAS: predicted 1, actual 9, error −8
  - DET@MIN: predicted 1, actual 5, error −4
  - SEA@BOS: predicted 1, actual 5, error −4
  - NYM@TB: predicted 1, actual 6, error −5
  - OAK@TEX: predicted 1, actual 7, error −6

The score-margin compression finding is high severity because it is broad, repeated, and persistent across six prior slates in the trend record. It is not a justification for indiscriminately widening every forecast; it supports a bounded shadow experiment on registered variance parameters.

The low run-model R² confirms that exact scores are weakly supported by the current features. Winner and score systems should not be treated as equally reliable outputs.

## Starter accuracy

Starter projections were mixed rather than uniformly defective.

Several games had meaningful starter ER errors:

- CHW@HOU: Davis Martin −5 ER relative to projection
- MIA@KC: Eury Pérez +4; Noah Cameron +4
- PHI@ARI: Andrew Painter −4
- ATL@WAS: Brad Lord −3
- BAL@COL: Trevor Rogers −3
- DET@MIN: Drew Anderson −3
- MIL@CHC: Jacob Misiorowski +3

Other games had relatively accurate starter ER projections, with worst error only one run:

- NYM@TB
- NYY@LAA
- SD@CIN
- SEA@BOS
- SF@PIT
- STL@LAD

The lever tension was nearly balanced: pitcher-form reweighting helped seven games and risked hurting six. The evidence does not justify a broad pitcher-weight change today.

## Artifact integrity

Artifact integrity was mostly sound but not clean:

- Structural totals: 0 critical, 0 errors, 2 warnings, 110 informational findings
- OAK@TEX: one pitch-count warning
- PHI@ARI: one pitch-count warning
- All other game audits: PASS with no warning or error
- The missing integrity-revision audit remains a manifest-level gap
- SF@PIT has a critical probability-lineage issue, which is an evidence/contract failure even though its structural game audit passed

The causal register must therefore be reconciled as follows:

### Critical: unexplained probability publication delta

- Severity: **critical**
- Affected game: **SF@PIT**
- Evidence: calibrated-to-published delta of +2.329 percentage points, with no recorded transformation
- Action: block promotion until the pick-side math is traced and the missing transformation is recorded
- Guardrail: do not assume the probability governor was bypassed until the pick-side calculation is reconstructed

### High: artifact-integrity warning

- Severity: **high**
- Affected games: no winner-side attribution assigned
- Evidence: 0 critical, 0 errors, 2 warnings, 110 informational findings
- Action: reconcile the flagged stat/presentation contract
- Guardrail: a warning indicates a display or contract problem; it does not prove the wrong pick

### High: pipeline winner instability

- Severity: **high**
- Affected games named in the register: DET@MIN, OAK@TEX, PHI@ARI, SEA@BOS, TOR@CLE
- Evidence: `variance_applied → enhanced_prediction` changed winner accuracy by −0.2667, or four hits
- Action: list exact flips and retain before/after picks
- Guardrail: a later recovery would not erase the intermediate regression

### High: score-margin compression

- Severity: **high**
- Affected games: ATL@WAS, DET@MIN, NYM@TB, OAK@TEX, SD@CIN, SEA@BOS, TOR@CLE
- Evidence: 15/15 predicted margins ≤2; 8/15 actual margins ≥4; mean margin 1.20 versus 4.27
- Action: test tail coverage and margin MAE across recent out-of-sample slates
- Guardrail: one blowout does not justify widening every score

### High: single-slate calibration instability

- Severity: **high**
- Affected games: all 15
- Evidence: weighted absolute calibration error 0.2100
- Action: monitor the same buckets over rolling windows
- Guardrail: do not infer a stable calibration curve from 15 games

### High: weak run-model signal

- Severity: **high**
- Affected games: all 15
- Evidence: home/away/total R² of 0.0300/0.0214/0.0287
- Action: treat exact runs as low-confidence and investigate features/target
- Guardrail: positive R² does not make exact scores reliable

### Informational: complete audit coverage

- Severity: **info**
- Evidence: 15/15 structurally audited
- Action: retain per-game audit receipts
- Guardrail: coverage does not negate findings

### Informational: simulation inertness

- Severity: **info** in the causal register, but escalated across slates
- Evidence: zero flip candidates and zero published flips
- Action: measure simulation contribution and verify it is running
- Guardrail: zero flips is not itself a defect and does not prove no score work occurred

---

# 3. Every game

Notation: edge is the absolute home-minus-away confidence distance; signed edge is home probability direction. “Path” lists the meaningful published score stages.

## ATL@WAS — hit, correct winner/wrong score

- Predicted: ATL 5, WAS 4; winner ATL
- Actual: ATL 9, WAS 0; winner ATL
- Published pick probability: ATL 0.530; home probability 0.470
- Signed home-minus-away edge: −0.060; conviction: lean
- Brier: 0.2209
- Team-run error: 8
- Total-run bias: 0
- Starter lines:
  - Grant Holmes: projected 2 ER/15 outs; actual 0 ER/9 outs; ER error −2
  - Brad Lord: projected 3 ER/15 outs; actual 0 ER/10 outs; ER error −3
- Edges: season −0.476; recent −0.098; pitcher −0.013; composite −0.494
- Controls: governor applied; calibrated/governed probability 0.5082; recency guardrail applied; confidence pipeline reached 0.508 before publication controls; no volatility change
- Score path: historical ML 5.84–3.65 → variance 6–4 → enhanced 6–5 → Savant/environment 7–5 → published 5–4
- Player adjustments: none recorded
- Audit: PASS; zero defects; seven informational notes; artifact not causal
- Primary cause: none for winner
- Secondary cause: starter projection and Atlanta offense/Washington run suppression were not captured in the score
- Classification: **correct winner/wrong score**

## BAL@COL — miss

- Predicted: BAL 7, COL 5; winner BAL
- Actual: BAL 5, COL 6; winner COL
- Published pick probability: BAL 0.557335; home probability 0.443
- Signed home-minus-away edge: −0.1147; conviction: moderate
- Brier: 0.310622
- Team-run error: 3
- Total-run bias: +1
- Starters:
  - Trevor Rogers: projected 5 ER/17 outs; actual 2 ER/20 outs; error −3
  - Tomoyuki Sugano: projected 3 ER/14 outs; actual 3 ER/18 outs; error 0
- Edges: season −0.952; recent −0.768; pitcher +0.085; composite −0.888
- Controls: governor applied; calibrated 0.5499; recency guardrail applied; confidence before later controls 0.550; no volatility change
- Score path: 5.84–3.65 → 6–4 → 6–5 → 7–5 → 7–5 final
- Player adjustments: 24 material changes; largest listed effects included Coby Mayo +2.36 predicted RBI, Luis Robert Jr. +1.618 BB, Jake McCarthy −1.57 AB, Samuel Basallo +1.51 RBI, and several Colorado/Baltimore lineup changes
- Audit: PASS; no defects
- Primary cause: wrong conviction side
- Secondary cause: starter projection, especially Rogers’ three-ER overestimate
- Note: the 0.11 edge was moderate, not near a coin flip, but it still did not warrant treating the call as high certainty

## CHW@HOU — hit, correct winner/wrong score

- Predicted: CHW 5, HOU 6; winner HOU
- Actual: CHW 0, HOU 2; winner HOU
- Published pick probability: HOU 0.530
- Signed home-minus-away edge: +0.060; conviction: lean
- Brier: 0.2209
- Team-run error: 9
- Total-run bias: +9
- Starters:
  - Davis Martin: projected 5 ER/15 outs; actual 0 ER/17 outs; error −5
  - Hayden Wesneski: projected 3 ER/16 outs; actual 0 ER/21 outs; error −3
- Edges: season −0.484; recent −0.050; pitcher +0.103; composite +0.127
- Controls: governor applied; calibrated 0.5082; recency guardrail applied; no volatility change
- Score path: 5.0–3.0 → 5–4 → 5–6 → 5–6 final
- Player adjustments: none recorded
- Audit: PASS; no defects
- Primary cause: none for winner
- Secondary cause: both starters outperformed ER projections and both offenses were overprojected
- Classification: **correct winner/wrong score**

## DET@MIN — miss

- Predicted: DET 4, MIN 5; winner MIN
- Actual: DET 11, MIN 6; winner DET
- Published pick probability: MIN 0.559116
- Signed home-minus-away edge: +0.1182; conviction: moderate
- Brier: 0.312611
- Team-run error: 8
- Total-run bias: −8
- Starters:
  - Drew Anderson: projected 4 ER/13 outs; actual 1 ER/17 outs; error −3
  - Dean Kremer: projected 2 ER/15 outs; actual 4 ER/12 outs; error +2
- Edges: season +0.002; recent +1.010; pitcher −0.033; composite +0.362
- Controls: governor applied; calibrated 0.6196; recency guardrail applied; pre-control pipeline 0.620; supported blowout-margin expansion
- Score path: 5.43–3.35 → 5–3 → 4–5 → 4–5 final
- Player adjustments: 22 material changes; notable effects included Kody Clemens +3.421 RBI, Eduardo Valencia +2.64 hits, and negative/positive changes across Riley Greene, John Peck, Ryan Jeffers, Kaelen Culpepper, and Colt Keith
- Audit: PASS; no defects
- Primary cause: run environment under/under-dispersion
- Secondary cause: wrong conviction side
- Earliest model regression: enhanced prediction changed the call from DET to MIN after variance had not yet made that winner-direction error
- Classification: wrong winner and wrong score

## MIA@KC — hit, correct winner/wrong score

- Predicted: MIA 5, KC 4; winner MIA
- Actual: MIA 9, KC 6; winner MIA
- Published pick probability: MIA 0.555608
- Signed home-minus-away edge: −0.1112; conviction: moderate
- Brier: 0.197484
- Team-run error: 6
- Total-run bias: −6
- Starters:
  - Eury Pérez: projected 2 ER/16 outs; actual 6 ER/14 outs; error +4
  - Noah Cameron: projected 0 ER/19 outs; actual 4 ER/15 outs; error +4
- Edges: season −0.383; recent +0.066; pitcher −0.119; composite −0.636
- Controls: governor applied; calibrated 0.5458; no recency guardrail; no volatility change
- Score path: 3.53–4.46 → 4–4 → 5–4 → 5–4 final
- Player adjustments: none recorded
- Audit: PASS; no defects
- Primary cause: none for winner
- Secondary cause: both starters were substantially worse than projected and Miami’s offense exceeded projection
- Lineage note: publication delta +0.9808 percentage points is described as unexplained, but correctly marked non-material

## MIL@CHC — hit, solid correct call but wrong score

- Predicted: MIL 6, CHC 4; winner MIL
- Actual: MIL 9, CHC 5; winner MIL
- Published pick probability: MIL 0.539627
- Signed home-minus-away edge: −0.0793; conviction: lean
- Brier: 0.211943
- Team-run error: 4
- Total-run bias: −4
- Starters:
  - Jacob Misiorowski: projected 2 ER/18 outs; actual 5 ER/12 outs; error +3
  - David Peterson: projected 6 ER/12 outs; actual 6 ER/11 outs; error 0
- Edges: season −0.106; recent +0.354; pitcher −0.062; composite −0.466
- Controls: governor applied; calibrated 0.5082; recency guardrail applied; no volatility change
- Score path: 5.48–4.58 → 5–5 → 5–6 → 5–6 final
- Player adjustments: none recorded
- Audit: PASS; no defects
- Primary cause: none
- Secondary cause: Milwaukee offense was underprojected and Misiorowski allowed three more ER than projected
- Classification: correct winner; `solid_correct_call` label, although exact score was not exact

## NYM@TB — miss

- Predicted: NYM 3, TB 4; winner TB
- Actual: NYM 10, TB 4; winner NYM
- Published pick probability: TB 0.548734
- Signed home-minus-away edge: +0.0975; conviction: lean
- Brier: 0.301109
- Team-run error: 7
- Total-run bias: −7
- Starters:
  - Justin Hagenman: projected 1 ER/9 outs; actual 1 ER/9 outs; error 0
  - Griffin Jax: projected 2 ER/15 outs; actual 3 ER/8 outs; error +1
- Edges: season +0.910; recent +0.652; pitcher +0.067; composite +0.990
- Controls: governor applied; calibrated 0.5499; recency guardrail applied; no volatility change
- Score path: 3.53–4.46 → 4–4 → 3–4 → 3–4 final
- Player adjustments: 23 material changes; notable changes included Francisco Lindor strikeout adjustment, Justin Hagenman +2.9 IP, Juan Soto +2.45 RBI, Kodai Senga +2.1 IP, and multiple TB/NYM lineup changes
- Audit: PASS; no defects
- Primary cause: run environment under/under-dispersion
- Secondary cause: none; starter projections were comparatively accurate
- Classification: wrong winner and wrong score

## NYY@LAA — hit, solid correct call but wrong score

- Predicted: NYY 4, LAA 2; winner NYY
- Actual: NYY 6, LAA 3; winner NYY
- Published pick probability: NYY 0.530
- Signed home-minus-away edge: −0.060; conviction: lean
- Brier: 0.2209
- Team-run error: 3
- Total-run bias: −3
- Starters:
  - Cam Schlittler: projected 0 ER/19 outs; actual 1 ER/24 outs; error +1
  - Reid Detmers: projected 2 ER/18 outs; actual 1 ER/21 outs; error −1
- Edges: season −1.334; recent −0.694; pitcher −0.021; composite −1.312
- Controls: governor applied; calibrated 0.5773; recency guardrail applied; supported blowout-margin expansion
- Score path: 4.58–4.14 → 5–4 → 4–2 → 4–2 final
- Player adjustments: none recorded
- Audit: PASS; no defects
- Primary cause: none
- Secondary cause: total scoring was modestly underprojected
- Classification: correct winner/wrong score

## OAK@TEX — miss

- Predicted: OAK 4, TEX 5; winner TEX
- Actual: OAK 9, TEX 2; winner OAK
- Published pick probability: TEX 0.560
- Signed home-minus-away edge: +0.1200; conviction: moderate
- Brier: 0.3136
- Team-run error: 8
- Total-run bias: −2
- Starters:
  - Jacob Lopez: projected 1 ER/15 outs; actual 2 ER/18 outs; error +1
  - Cody Bradford: projected 3 ER/15 outs; actual 5 ER/12 outs; error +2
- Edges: season +0.975; recent +0.398; pitcher +0.057; composite +0.942
- Controls: governor applied; calibrated 0.6233; recency guardrail applied; supported blowout-margin expansion
- Score path: 4.63–4.07 → 5–4 → 4–5 → 4–5 final
- Player adjustments: 25 material changes; notable changes included Corey Seager −2.462 BB, Jeff McNeil −1.89 AB, Henry Bolte −1.86 AB, Brandon Nimmo −1.62 hits, Michael Stefanic +1.545 strikeouts, and several Texas/Oakland adjustments
- Audit: **WARNING**, risk score 10
- Finding: Cody Bradford pitch-count summary disagreed with the box score: H 3 versus 2 and BF 19 versus 18
- Primary cause: wrong conviction side
- Secondary causes: small starter projection error and OAK offense underprojection
- Note: 0.12 is a moderate edge, not a near coin flip; it indicates meaningful but limited conviction

## PHI@ARI — miss

- Predicted: PHI 5, ARI 4; winner PHI
- Actual: PHI 0, ARI 1; winner ARI
- Published pick probability: PHI 0.530125
- Signed home-minus-away edge: −0.0602; conviction: lean
- Brier: 0.281033
- Team-run error: 8
- Total-run bias: +8
- Starters:
  - Andrew Painter: projected 4 ER/15 outs; actual 0 ER/21 outs; error −4
  - Taylor Clarke: projected 2 ER/18 outs; actual 0 ER/5 outs; error −2
- Edges: season −0.481; recent −0.794; pitcher +0.018; composite −0.604
- Controls: governor applied; calibrated 0.5540; recency guardrail applied; no volatility change
- Score path: 3.57–5.65 → 4–6 → 5–4 → 5–4 final
- Player adjustments: 22 material changes; notable effects included Luis Arraez −2.11 AB, Andrew Painter +2.0 hits, Bryan De La Cruz +1.5 AB, and multiple Philadelphia/Arizona strikeout, RBI, and playing-time changes
- Audit: **WARNING**, risk score 10
- Finding: Andrew Painter pitch-count summary disagreed with the box score: H 4 versus 3 and BF 21 versus 20
- Primary cause: starter projection, especially Painter’s four-ER overestimate
- Secondary cause: run environment over/over-dispersion
- Classification: wrong winner and wrong score

## SD@CIN — miss

- Predicted: SD 5, CIN 4; winner SD
- Actual: SD 3, CIN 7; winner CIN
- Published pick probability: SD 0.530
- Signed home-minus-away edge: −0.060; conviction: lean
- Brier: 0.2809
- Team-run error: 5
- Total-run bias: −1
- Starters:
  - Casey Mize: projected 3 ER/15 outs; actual 4 ER/12 outs; error +1
  - Brandon Williamson: projected 3 ER/13 outs; actual 3 ER/16 outs; error 0
- Edges: season −0.679; recent −0.186; pitcher −0.043; composite −0.695
- Controls: governor applied; calibrated 0.5696; recency guardrail applied; supported blowout-margin expansion
- Score path: 4.94–3.01 → 5–3 → 5–4 → 5–4 final
- Player adjustments: 22 material changes; notable effects included Héctor Rodríguez +2.524 RBI, Ty France +2.44 RBI, Jackson Merrill −2.15 AB, and several Cincinnati adjustments
- Audit: PASS; no defects
- Primary cause: lean-side miss
- Secondary cause: Cincinnati offense underprojection
- Classification: wrong winner and wrong score

## SEA@BOS — miss

- Predicted: SEA 4, BOS 5; winner BOS
- Actual: SEA 8, BOS 3; winner SEA
- Published pick probability: BOS 0.519697
- Signed home-minus-away edge: +0.0394; conviction: toss-up
- Brier: 0.270085
- Team-run error: 6
- Total-run bias: −2
- Starters:
  - Bryce Miller: projected 2 ER/16 outs; actual 1 ER/14 outs; error −1
  - Patrick Sandoval: projected 4 ER/15 outs; actual 3 ER/12 outs; error −1
- Edges: season +0.852; recent +0.274; pitcher +0.035; composite +0.795
- Controls: governor applied; calibrated 0.5059; recency guardrail applied; no volatility change
- Score path: 4.58–4.14 → 5–4 → 4–5 → 4–5 final
- Player adjustments: 20 material changes; notable effects included Roman Anthony +2.848 RBI, Julio Rodríguez −2.23 AB, Randy Arozarena +2.01 RBI, and multiple Boston/Seattle playing-time and hitting adjustments
- Audit: PASS; no defects
- Primary cause: toss-up variance
- Secondary cause: SEA offense underprojection
- Classification: wrong winner and wrong score

## SF@PIT — miss

- Predicted: SF 5, PIT 6; winner PIT
- Actual: SF 5, PIT 4; winner SF
- Published pick probability: PIT 0.54559
- Signed home-minus-away edge: +0.0912; conviction: lean
- Brier: 0.297668
- Team-run error: 2
- Total-run bias: +2
- Starters:
  - Landen Roupp: projected 1 ER/16 outs; actual 1 ER/15 outs; error 0
  - Bubba Chandler: projected 4 ER/15 outs; actual 3 ER/15 outs; error −1
- Edges: season +0.451; recent −0.240; pitcher +0.146; composite +0.690
- Controls: governor applied; calibrated 0.5223; no recency guardrail; no volatility change
- Score path: 5.48–4.58 → 5–5 → 5–6 → 5–6 final
- Player adjustments: 21 material changes; notable effects included Rafael Devers +1.92 hits, Nate Furman +1.78 hits, Brandon Lowe −1.74 AB, Oneil Cruz adjustment, and multiple strikeout/playing-time changes
- Audit: PASS; no structural defects
- Primary cause: mixed
- Secondary cause: probability/publication lineage defect
- Critical lineage finding: published 0.54559 versus calibrated 0.5223, a +2.329-point unexplained delta
- Classification: wrong winner and wrong score, although score error was relatively small

## STL@LAD — miss

- Predicted: STL 4, LAD 5; winner LAD
- Actual: STL 8, LAD 6; winner STL
- Published pick probability: LAD 0.530
- Signed home-minus-away edge: +0.060; conviction: lean
- Brier: 0.2809
- Team-run error: 5
- Total-run bias: −5
- Starters:
  - Brycen Mautz: projected 2 ER/9 outs; actual 3 ER/3 outs; error +1
  - Yoshinobu Yamamoto: projected 3 ER/20 outs; actual 4 ER/21 outs; error +1
- Edges: season +0.988; recent +0.249; pitcher +0.016; composite +0.820
- Controls: governor applied; calibrated 0.5910; recency guardrail applied; supported blowout-margin expansion
- Score path: 4.58–5.48 → 5–5 → 4–5 → 4–5 final
- Player adjustments: 26 material changes; notable effects included Hunter Feduccia +2.76 hits, Freddie Freeman adjustment, Leonardo Bernal −2.0 RBI, and several STL/LAD hitting changes
- Audit: PASS; no defects
- Primary cause: run environment under/under-dispersion
- Secondary cause: none formally assigned
- Classification: wrong winner and wrong score

## TOR@CLE — miss

- Predicted: TOR 2, CLE 3; winner CLE
- Actual: TOR 11, CLE 0; winner TOR
- Published pick probability: CLE 0.583822
- Signed home-minus-away edge: +0.1676; conviction: moderate
- Brier: 0.340848, worst listed on the slate
- Team-run error: 12, worst on the slate
- Total-run bias: −6
- Starters:
  - Dylan Cease: projected 2 ER/18 outs; actual 0 ER/18 outs; error −2
  - Joey Cantillo: projected 2 ER/15 outs; actual 4 ER/16 outs; error +2
- Edges: season +0.556; recent +0.764; pitcher −0.079; composite +0.504
- Controls: governor applied; calibrated 0.6394; recency guardrail applied; supported blowout-margin expansion
- Score path: 4.48–3.44 → 4–3 → 2–4 → 2–3 final
- Player adjustments: 22 material changes; notable effects included José Ramírez +1.97 hits, Steven Kwan +1.862 doubles, Brett Bateman −1.78 AB, Alejandro Kirk −1.65 AB, and several Cleveland/Toronto changes
- Audit: PASS; no defects
- Primary cause: run environment under/under-dispersion
- Secondary cause: wrong conviction side
- Classification: wrong winner and wrong score

---

# 4. Miss reconstruction

## Earliest wrong-direction movement for every loss

| Game | Earliest stage moving toward wrong result | Diagnosis |
|---|---|---|
| BAL@COL | Historical ML already favored BAL | Bad weighting/input balance or irreducible close-game variance; starter projection also overstated Rogers’ ER |
| DET@MIN | `enhanced_prediction`: DET → MIN | Bad weighting/process regression; recent/H2H/low-score logic overrode the prior direction. The 0.12 edge was moderate, not near coin-flip |
| NYM@TB | Historical ML already favored TB | Bad winner weighting or irreducible variance; score model severely underpredicted NYM offense |
| OAK@TEX | Historical ML slightly favored OAK, then `variance_applied` made it TEX and `enhanced_prediction` retained TEX | Earliest wrong direction: variance stage. Later enhancement preserved the error. The 0.12 edge was moderate |
| PHI@ARI | Historical ML favored ARI, then `variance_applied` moved to PHI and `enhanced_prediction` retained PHI | Earliest wrong direction: variance stage. Starter and low-run-environment errors worsened the miss |
| SD@CIN | Historical ML, variance, and enhanced stages all favored SD | Lean-side miss with modest starter and Cincinnati-offense error; likely variance/weighting plus irreducible outcome noise |
| SEA@BOS | Historical ML slightly favored SEA; `variance_applied` remained close, `enhanced_prediction` moved to BOS | Earliest clear wrong-direction stage: enhanced prediction. Toss-up variance was important; winner confidence was only 0.04 |
| SF@PIT | Historical ML favored SF; variance produced a tie; enhancement moved to PIT | Earliest directional degradation began at variance through SF → tie, then enhancement completed the wrong-side move |
| STL@LAD | Historical ML favored LAD; variance produced a tie; enhancement restored LAD | Earliest movement away from the actual winner began at historical ML itself; variance did not create the final wrong side but did remove a correct historical direction |
| TOR@CLE | Historical ML favored TOR; variance preserved TOR; enhancement moved to CLE | Earliest wrong-direction stage: enhanced prediction. The later score environment did not recover it |

## Cause classification

- **Bad input / artifact:** No evidence that missing or malformed artifacts caused the winner misses. OAK@TEX and PHI@ARI had pitch-count warnings, but both warnings are presentation/contract discrepancies and are not shown to have caused the picks.
- **Bad weighting/process:** Strong evidence at `variance_applied → enhanced_prediction`, with a net four-hit winner regression. DET@MIN, OAK@TEX, PHI@ARI, SEA@BOS, and TOR@CLE are explicitly registered; the full transition also moved ATL, NYM, SF, and STL.
- **Calibration:** Published confidence was broadly too high, especially in the 0.55–0.60 bucket. This amplified the cost of misses but did not by itself determine every wrong side.
- **Starter error:** Material in BAL@COL, CHW@HOU, DET@MIN, MIA@KC, MIL@CHC, and PHI@ARI. Starter accuracy was comparatively good in NYM@TB, NYY@LAA, SD@CIN, SEA@BOS, SF@PIT, and STL@LAD.
- **Offense/bullpen miss:** Offensive run projections failed repeatedly, especially ATL, DET, NYM, OAK, TOR, and Cincinnati. The records do not provide enough player-level actuals to assign bullpen-specific causation.
- **Run-environment miss:** Broad under-dispersion/compressed tails affected at least ATL, DET, NYM, OAK, SD, SEA, STL, and TOR, with over-dispersion in PHI@ARI and CHW@HOU.
- **Irreducible variance:** Most applicable to SEA@BOS, SF@PIT, and other low-edge games. It is not a sufficient explanation for the high-confidence TOR@CLE failure or the systematic margin compression.

## Pipeline-stage quality across all stages

| Stage | Winner accuracy | Winner hits | Team-run MAE | Margin MAE | Total-run MAE |
|---|---:|---:|---:|---:|---:|
| historical_ml | 73.33% | 11 | 2.9394 | 3.8777 | 4.0109 |
| variance_applied | 60.00% | 9 | 2.9333 | 3.7333 | 4.1333 |
| enhanced_prediction | 33.33% | 5 | 3.0667 | 4.6667 | 4.0000 |
| embedded_savant_run_environment | 33.33% | 5 | 3.1333 | 4.5333 | 4.2667 |
| fundamental_edge_target_review | 33.33% | 5 | 3.1333 | 4.5333 | 4.2667 |
| capped_target | 33.33% | 5 | 3.1333 | 4.5333 | 4.2667 |
| simulation_result | 33.33% | 5 | 3.1333 | 4.5333 | 4.2667 |
| published_final | 33.33% | 5 | 3.1333 | 4.5333 | 4.2667 |

Transitions:

- Historical → variance:
  - Winner accuracy −2 hits
  - Margin MAE improved by 0.1444
  - Direction changes included ATL→tie, TB→tie, SF→tie, LAD→tie
  - Regression games explicitly identified: ATL@WAS and SF@PIT
- Variance → enhanced:
  - Winner accuracy **−4 hits**
  - Margin MAE worsened by 0.9334
  - Team-run MAE worsened by 0.1334
  - Only ATL@WAS was listed as improved
  - Explicit regressions: DET@MIN, OAK@TEX, PHI@ARI, SEA@BOS, TOR@CLE
- Enhanced → embedded Savant:
  - No winner-direction changes
  - Margin MAE improved slightly by 0.1334, but team-run and total-run MAE worsened
- Embedded Savant through published final:
  - No winner changes
  - No score changes
  - Simulation produced zero winner flips

A later unchanged or recovered stage does not erase the enhanced-stage regression.

---

# 5. Cross-game counterfactuals

## Lever tension: score variance multiplier/floor

**Lever:** `score.variance_multiplier / score.variance_floor`  
**Proposed direction:** widen run distributions  
**Targets:** Brier score and calibration error

Helps:

- BAL@COL: lost a 0.11-confidence pick; wider tails could reduce overconfidence
- DET@MIN: lost a 0.12-confidence pick; actual margin 5 versus predicted 1
- OAK@TEX: lost a 0.12-confidence pick; actual margin 7 versus predicted 1
- TOR@CLE: lost a 0.17-confidence pick; actual margin 11 versus predicted 1

Hurts: none listed in the slate-level tension record.

Net evidence: **4 helps, 0 hurts.** This is favorable, but the counterfactual is mainly about distribution and calibration, not guaranteed winner improvement. It should be tested as a bounded shadow experiment.

## Lever tension: pitcher form/prior weighting

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

Helps:

- ATL@WAS
- BAL@COL
- CHW@HOU
- DET@MIN
- MIA@KC
- MIL@CHC
- PHI@ARI

Hurts or creates risk:

- NYM@TB
- NYY@LAA
- SD@CIN
- SEA@BOS
- SF@PIT
- STL@LAD

Net evidence: **7 helps versus 6 hurts.** No broad move is supported. The lever risks disturbing several games where starter projection was already within one ER.

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

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

Helps or could reduce error in:

- ATL@WAS
- CHW@HOU
- DET@MIN
- MIA@KC
- MIL@CHC
- NYM@TB
- OAK@TEX
- PHI@ARI
- SD@CIN
- SEA@BOS
- STL@LAD
- TOR@CLE

Hurts or risks disturbing:

- SF@PIT, where team-run error was only 2

Net evidence: **12 helps versus 1 hurts.** This is favorable for run MAE and total-run MAE, but the cross-slate weak-R² finding argues for isolated training/backtesting rather than an immediate production weighting change.

## One-game fixes that must not be made

- Do not widen all scores solely because ATL@WAS or TOR@CLE was a blowout; the evidence is broader and persistent, but the fix must remain bounded.
- Do not sharply increase pitcher recency weighting because of Painter, Rogers, or the Detroit/Minnesota starters; six other games would be put at risk.
- Do not remove all matchup-recency or recent-form controls because several individual calls were wrong; those controls may be useful in other games.
- Do not treat the 0.12 edge in DET@MIN or OAK@TEX as a coin flip. It is moderate conviction and should be calibrated downward if persistent, not discarded.
- Do not promote the current pipeline while the SF@PIT probability delta remains untraced.
- Do not force a simulation parameter change solely because there were zero flips; the registered action is diagnostic, not a production tuning request.

---

# 6. Data and contract defects

## Audit findings by severity

### Critical

No structural audit file reports a critical finding. However, the causal register contains one **critical contract failure**:

- **SF@PIT:** unexplained +2.329 percentage-point calibrated-to-published probability delta.
- Required action: reconstruct raw → calibrated → governor → score coherence/recency → published pick-side math and block promotion until reconciled.

### Error

- Structural audit error count: **0**
- No per-game structural error findings reported.

### Warning

1. **OAK@TEX — Cody Bradford pitch-count mismatch**
   - Summary H 3 versus box H 2
   - Summary BF 19 versus box BF 18
   - Rule: `PITCH_COUNT_PITCHER_MATCH`
   - Source: simulation
   - Risk score: 10

2. **PHI@ARI — Andrew Painter pitch-count mismatch**
   - Summary H 4 versus box H 3
   - Summary BF 21 versus box BF 20
   - Rule: `PITCH_COUNT_PITCHER_MATCH`
   - Source: simulation
   - Risk score: 10

These are artifact/stat-contract defects, not demonstrated prediction causes.

### Informational

- 110 informational findings across the slate
- Complete structural coverage of all 15 games
- Zero simulation winner flips
- Per-game informational notes, typically seven or eight per clean game

## Model defects versus presentation/artifact defects

### Prediction-model/process defects

- Enhanced prediction materially degraded winner direction: 9/15 to 5/15.
- Run margins were compressed across all 15 games.
- Run-model holdout R² was weak.
- Confidence buckets were overconfident.
- Simulation was inert for six consecutive slates and requires execution diagnostics.

### Presentation/artifact/contract defects

- SF@PIT missing probability transformation record: critical contract problem.
- OAK@TEX and PHI@ARI pitch-count summary/box-score mismatches.
- Missing integrity revision audit file.

The evidence does not support blaming the two pitch-count warnings for the misses.

## Probability-lineage audit

The available lineage records contain the following fields:

- Raw model pick probability
- Calibrated pick probability
- Governor input and output
- Score-coherence probability
- Recency guardrail status
- Published probability
- Transformation description
- Unexplained-material-delta flag

Most games have a recorded transformation such as “score coherence followed by matchup-recency guardrail,” and the governor is marked applied.

Material bypass:

- **SF@PIT only:** published 0.54559 versus calibrated 0.5223, +2.329 points, with no recorded transformation. This is a material unexplained delta and must be treated as a critical contract failure until traced.

Non-material traceability issue:

- **MIA@KC:** published 0.555608 versus calibrated 0.5458, +0.981 points; the transformation text says no transformation explains it, but the flag is false. This should be corrected for completeness but is below the material threshold.

No other material unexplained publication delta is recorded.

---

# 7. Cross-slate persistence

The trend window covers six slates, with five prior slates loaded.

## Escalated findings

These are established failures, not single-slate noise.

### Score-margin compression

- Consecutive slates: **3**
- Present now: yes
- Incidence in six-slate window: 3
- Target levers: `score.variance_multiplier`, `score.variance_floor`
- Metric group: run model
- Metrics harmed: `team_run_mae`, `total_run_mae`
- Fix direction: widen run distributions

### Simulation inertness

- Consecutive slates: **6**
- Present now: yes
- Incidence: 6
- Target lever listed: `simulation.allow_score`
- Parameter actionable: no
- Metrics harmed: `team_run_mae`, `total_run_mae`
- Fix direction: confirm the simulation module is running and not silently no-oping
- Required action is code/diagnostic verification, not forced parameter tuning

### Calibration instability

- Consecutive slates: **3**
- Present now: yes
- Incidence: 5
- Target levers: `confidence.empirical_max_weight`, `confidence.base_cap`, `confidence.moderate_cap`
- Metrics harmed: Brier score and calibration error
- Fix direction: increase empirical shrinkage

### Weak run-model signal

- Consecutive slates: **6**
- Present now: yes
- Target levers listed: `training.xgb.n_estimators`, `training.xgb.max_depth`, `training.xgb.learning_rate`
- Parameter actionable: no
- Metrics harmed: team-run MAE and total-run MAE
- Fix direction: isolated feature/target/training backtest; do not force a production parameter move

## Finding streaks

- `high_raw_probability_cluster`: consecutive count 0; present now false; incidence 2/6
- `pipeline_winner_instability`: consecutive count 1; present now true; incidence 3/6
- `score_margin_compression`: consecutive count 3; present now true; incidence 3/6
- `simulation_inert_on_slate`: consecutive count 6; present now true; incidence 6/6
- `single_slate_calibration_instability`: consecutive count 3; present now true; incidence 5/6
- `weak_run_model_signal`: consecutive count 6; present now true; incidence 6/6

## Raw structural blocks

### Margin distribution

- Actual margins ≥4: 8/15
- Predicted margins ≤2: 15/15
- Actual margin range: 1 to 11
- Predicted margin range: 1 to 2
- Mean predicted margin: 1.20
- Mean actual margin: 4.27
- Slate margin bias series is regressing: −1.333, −1.882, −2.786, −3.500, −2.533, −3.067

### Pipeline transitions

- Historical ML was 11/15.
- Variance applied fell to 9/15.
- Enhanced prediction fell to 5/15.
- Every subsequent stage remained 5/15.
- This establishes an intermediate winner-direction regression, not merely a final-score issue.

### Calibration monitoring

Current buckets remain overconfident:

- 0.50–0.55: 40% observed hits against 53.34% confidence
- 0.55–0.60: 20% observed hits against 56.32% confidence
- Weighted absolute calibration error: 0.2100

The trend direction is marked **flat**, but at a poor level rather than a healthy level.

### High raw cluster

- Threshold: 0.65
- Current games: 0
- Current hits: 0
- No present high-raw cluster to correct.

### Simulation control

- Observed games: 15
- Flip candidates: 0
- Published flips: 0
- Status: diagnostic-only without independent support
- Persistence: six consecutive slates

## Metric-trend directions

- Margin bias: **regressing**, mean −2.5168
- Mean team-run error on losses: **regressing**, mean 6.1292
- Weighted calibration error: **flat**, mean 0.2178
- Winner accuracy: **regressing**, mean 0.5624

## Top-confidence-pick loss streak

The top-confidence pick has a current loss streak of **2**:

- 2026-08-28: hit
- 2026-08-29: hit
- 2026-08-30: miss
- 2026-08-31: hit
- 2026-09-01: miss
- 2026-09-02: miss

---

# 8. Adjustments for today

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

## 1. Bounded shadow experiment for persistent score compression

- Exact lever: `score.variance_multiplier`
- Direction: increase modestly
- Magnitude: **+5% in shadow only**
- Expected metric: reduce team-run MAE and total-run MAE; improve tail coverage and potentially reduce Brier/calibration error
- Helps according to lever tension: BAL@COL, DET@MIN, OAK@TEX, TOR@CLE
- Hurts according to current slate tension: none listed
- Regression risk: medium; widening can worsen already close or low-scoring games
- Gate: compare against current production on rolling out-of-sample slates; roll back if median team-run MAE or total-run MAE worsens materially

`score.variance_floor` could be tested separately, not simultaneously, to preserve causal interpretability.

## 2. Bounded shadow experiment for persistent calibration overconfidence

- Exact lever: `confidence.empirical_max_weight`
- Direction: increase empirical shrinkage
- Magnitude: **+5% relative weight in shadow**
- Expected metrics: lower weighted calibration error and Brier score; reduce overconfidence in the 0.50–0.60 buckets
- Helps: moderate-confidence misses such as BAL@COL, DET@MIN, OAK@TEX, and TOR@CLE
- Hurts: may reduce useful confidence separation on correct calls such as NYY@LAA, MIA@KC, and MIL@CHC
- Regression risk: medium; monitor discrimination, not only calibration
- Gate: retain only if calibration error improves without unacceptable winner-accuracy or log-loss degradation

Do not simultaneously change `confidence.base_cap` or `confidence.moderate_cap`; those are alternative shadow levers.

## 3. Code/diagnostic action for six-slate simulation inertness

- Target: `simulation.allow_score`
- Parameter move: **abstain from production parameter tuning**
- Action: verify execution path, score-state mutation, flip-candidate generation, and whether simulation output is actually consumed by `simulation_result` and `published_final`
- Expected metric: establish whether simulation can affect team-run MAE and total-run MAE
- Helps: all games if simulation is silently no-oping
- Hurts: none directly, but a faulty diagnostic change could create artifact risk
- Regression risk: high if enabled blindly; this is a code/diagnostic issue, not a tuning opportunity

## 4. Isolated training/backtest for six-slate weak run-model signal

- Target levers listed: `training.xgb.n_estimators`, `training.xgb.max_depth`, `training.xgb.learning_rate`
- Parameter move: **abstain from direct production change**
- Action: manual isolated training experiment comparing feature sets, target definitions, tail losses, and walk-forward MAE/R²
- Expected metric: improve team-run MAE and total-run MAE if a better target or feature representation is found
- Helps: broad run-error games, particularly DET@MIN, NYM@TB, OAK@TEX, PHI@ARI, SEA@BOS, STL@LAD, and TOR@CLE
- Hurts: uncertain; SF@PIT’s low current run error demonstrates the risk of broad changes
- Regression risk: high without an isolated backtest

## 5. Winner-pipeline diagnostic for the strongest single-slate driver

- Strongest slate-specific driver: `variance_applied → enhanced_prediction` winner regression
- Exact registered parameter: **none**
- Parameter move: **abstain**
- Action: code-level trace and contract check for every winner change, especially DET@MIN, OAK@TEX, PHI@ARI, SEA@BOS, and TOR@CLE; retain pre-enhanced and post-enhanced pick probabilities and sides
- Expected metric: restore winner accuracy and reduce Brier damage if the regression is caused by an implementation or weighting defect
- Helps: the five explicitly regressed games
- Hurts: no evidence of a justified production lever; blanket removal of enhancement could damage ATL@WAS or other recovered cases
- Regression risk: high if the enhancement is simply removed without attribution

## 6. Critical probability-lineage remediation

- Exact lever: none; this is a contract fix
- Action: reconstruct SF@PIT raw → calibrated → governor → score coherence/recency → published math; reconcile MIA@KC’s minor unexplained text as well
- Expected metric: artifact integrity, auditability, and confidence in Brier/calibration measurements
- Helps: SF@PIT directly; all future games operationally
- Hurts: none if limited to trace correction
- Promotion status: block promotion until resolved

---

# 9. Bottom line

Known:

- The slate was fully covered and scored across all 15 games.
- Winner accuracy was poor at 5/15.
- Exact-run modeling was substantially under-dispersed: every predicted margin was ≤2 while more than half the actual margins were ≥4.
- The historical ML stage was much better directionally than the later published pipeline.
- `variance_applied → enhanced_prediction` caused a material four-hit winner regression.
- Published confidence was overconfident, particularly in the 0.55–0.60 bucket.
- Score compression, calibration instability, simulation inertness, and weak run-model signal are persistent cross-slate patterns.
- Two pitch-count warnings are artifact/contract problems, not demonstrated causes of prediction misses.
- SF@PIT has a critical unexplained probability-publication delta.
- The integrity revision audit is missing.

Uncertain:

- Whether the enhanced-prediction degradation is a weighting problem, implementation defect, or interaction among recent form, H2H, starter controls, and low-score logic.
- Whether widening variance will improve winner probabilities or only score tails.
- Whether simulation is truly inert or simply has no winner-direction opportunities under the current configuration.
- Player-level causal attribution remains incomplete because actual player-level forensics are unavailable.

The single safest next action is:

> **Block promotion and trace the complete probability lineage for SF@PIT while simultaneously preserving before/after winner picks at every pipeline stage, especially the `variance_applied → enhanced_prediction` transition.**

That action addresses the only critical contract failure and the strongest single-slate process risk without making an unvalidated production tuning change.
