Deep slate report — 20260917

Generated 2026-09-18T05:07:48.619131-04:00 · schema deep_slate_diagnosis_v3 · fuses prediction review + forensic deep audit + official starter lines, with a Luna post-mortem.

Process, end to end

1. Settle review
complete
9 games vs official finals
2. Forensic deep audit
complete
per-game probability + pitcher impact
3. Deep diagnosis
built
5 losses attributed to a root cause
4. Luna post-mortem
received
9/8 sections; 9/9 games; 4/4 causes; 5/6 sources
5. Adjustment
applied_to_production
score.variance_multiplier
6. Applied to production
champion changed
armed for rollback; next slates measure improve/worsen

Slate summary

Games
9
Hits
4
Misses
5
Winner accuracy
44%
Mean Brier (losses)
0.293
Mean total-run bias (losses)
1.2

What drove the losses

Starting-pitcher projection was wrong: 2Genuine toss-up that flipped: 1Backed the wrong side with real conviction: 2

Source coverage receipt

Which reports actually fed the diagnosis. A source shown as missing was not silently assumed.

SourceStatusEvidence suppliedPathBytes
prediction reviewloadedofficial outcomes and scoring errors/app/output/reports/prediction_review_20260917.json229581
forensic deep auditloadedprobability, provenance, starter and decision contracts/app/output/reports/PREDICTION_SYSTEM_DEEP_AUDIT_20260917.json150866
continuous learningloadedpipeline-stage quality, calibration, probability lineage, score distribution, and official starter comparisons/app/output/learning/continuous_learning_daily_20260917.json1555702
detailed reportloadedfull game and simulation rendering/app/output/reports/detailed_20260917.html214325
ultra detailed player auditloadedplayer-level prediction trace/app/output/reports/20260917_ultra_detailed_player_audit.html20306685
structural auditloadedall invariant findings/app/output/reports/audit_report_20260917.html1143113
integrity revision auditmissingpost-Luna remediation proof for immutable revision artifacts/app/output/reports/audit_report_20260917_integrity_revision.htmln/a

High-level causal issue register

Deterministic findings across data integrity, model validation, calibration, score distribution, pipeline stages, simulation, and coverage. Critical is reserved for broken evidence or an unexplained contract violation; high marks material model/process risk. Each row pairs the action to take (Do this) with the wrong conclusion to avoid (Don't conclude).

SeverityDomainFinding and evidenceAffectedAction & guardrail
HIGHmodel_validationValidated run models explain very little holdout variance
home/away/total R² = 0.0027/0.0232/0.0056
BOS@TEX, DET@CHW, KC@HOU, LAD@CIN, MIL@PIT, MIN@LAA, OAK@TB, PHI@NYM, SD@COL
Do thisTreat exact run scores as low-confidence estimates, and look for stronger features or a better target before tuning the score tails.
Don't concludeA small positive R² only means the model beats guessing the average; it does not make the exact scores reliable.
INFOcoverageEvery settled game received structural QA
9/9 games structurally audited
BOS@TEX, DET@CHW, KC@HOU, LAD@CIN, MIL@PIT, MIN@LAA, OAK@TB, PHI@NYM, SD@COL
Do thisKeep the per-game audit receipt in every report.
Don't concludeFull audit coverage does not cancel the findings raised inside the audited games.
INFOprobability_lineageMaterial calibrated-to-published movements have recorded lineage
6 material movement(s), all explained by named score-coherence and/or recency transformations
DET@CHW, KC@HOU, LAD@CIN, MIL@PIT, OAK@TB, SD@COL
Do thisKeep showing every probability layer and the named transformation between them.
Don't concludeA published probability above the calibrated one is not a governor bypass when a recorded transformation explains it.
INFOsimulationSimulation produced no winner-direction intervention on this slate
flip candidates 0; published flips 0
BOS@TEX, DET@CHW, KC@HOU, LAD@CIN, MIL@PIT, MIN@LAA, OAK@TB, PHI@NYM, SD@COL
Do thisMeasure the simulation's contribution across rolling slates, separating score realization from winner flipping.
Don't concludeZero winner flips is not a defect and does not mean the simulation did no score-reconciliation work.

Cross-slate trends (persistent-pattern memory)

Window: 20260907, 20260908, 20260909, 20260910, 20260911, 20260912, 20260913, 20260914, 20260915, 20260916, 20260917 (10 prior slates loaded). Highest-confidence pick loss streak: 0 slate(s). Actionable pattern detected.

Escalated persistent patterns

A finding that has repeated at or beyond the escalation streak is no longer single-slate noise. It carries its target registered lever and an action-oriented guardrail.

FindingPersistenceTarget lever(s)DirectionGuardrail
simulation_inert_on_slate11 consecutive · 11 in windowsimulation.allow_scoreconfirm the simulation module is running, not silently no-opingsimulation_inert_on_slate has persisted 11 consecutive slates; this is no longer single-slate noise. Treat it as an actionable pattern and raise the code/diagnostic action named; do not force a parameter move.
weak_run_model_signal11 consecutive · 11 in windowtraining.xgb.n_estimators, training.xgb.max_depth, training.xgb.learning_rateinvestigate features/target via isolated training backtest (manual)weak_run_model_signal has persisted 11 consecutive slates; this is no longer single-slate noise. Treat it as an actionable pattern and raise the code/diagnostic action named; do not force a parameter move.

Finding streaks across the window

FindingConsecutive slatesIncidencePresent nowFix type
high_raw_probability_cluster01/11noparam
pipeline_winner_instability02/11nocode/diagnostic
score_margin_compression01/11noparam
simulation_inert_on_slate1111/11yescode/diagnostic
single_slate_calibration_instability07/11noparam
weak_run_model_signal1111/11yescode/diagnostic

Metric direction across the window

MetricDirectionSeries (old → new)
winner_accuracyregressing[0.5455, 0.7333, 0.6667, 0.6, 0.6667, 0.5333, 0.6, 0.7, 0.4, 0.6667, 0.4444]
weighted_calibration_errorimproving[0.2611, 0.1825, 0.1069, 0.1171, 0.2091, 0.1711, 0.0827, 0.2812, 0.2795, 0.1661, 0.1016]
margin_biasregressing[-0.182, -0.867, -2.133, -1.0, -2.933, -2.667, -1.8, -0.4, -1.667, -1.133, -2.111]
team_run_error_on_lossesimproving[3.8, 6.75, 5.6, 6.5, 5.0, 6.143, 5.0, 6.333, 5.556, 6.4, 3.6]

Pipeline stage regression

Every stored stage is scored against the same official finals. A later recovery remains visible; it does not erase an unstable intermediate flip.

StageWinner hitsAccuracyTeam-run MAETotal-run MAEMargin MAE
historical_ml4/944.4%2.0862.1743.582
variance_applied4/944.4%2.0562.1113.667
enhanced_prediction4/944.4%1.88923.556
embedded_savant_run_environment4/944.4%1.9442.1113.444
fundamental_edge_target_review4/944.4%1.9442.1113.444
capped_target4/944.4%1.9442.1113.444
simulation_result4/944.4%1.9442.1113.444
published_final4/944.4%1.9442.1113.444
TransitionΔ accuracyΔ hitsΔ team-run MAEΔ margin MAEGames whose winner/tie changed
historical_ml → variance_applied00-0.03070.0843BOS@TEX: TEX → TIE
variance_applied → enhanced_prediction00-0.1667-0.1111BOS@TEX: TIE → TEX
enhanced_prediction → embedded_savant_run_environment000.0555-0.1112
embedded_savant_run_environment → fundamental_edge_target_review0000
fundamental_edge_target_review → capped_target0000
capped_target → simulation_result0000
simulation_result → published_final0000

Probability lineage and calibration

All columns are pick-side probabilities, so away favorites are not accidentally compared using home-side semantics.

GameOutcomeRaw modelCalibratedGovernorScore coherencePublishedExplanation
BOS@TEXmiss0.57820.56330.56330.56330.5538no recorded transformation explains the publication delta
DET@CHWmiss0.55270.58370.58370.58070.53score coherence followed by matchup-recency guardrail
KC@HOUhit0.60730.56060.56060.56060.5295score coherence followed by matchup-recency guardrail
LAD@CINhit0.65660.71060.71060.71060.56score coherence followed by matchup-recency guardrail
MIL@PITmiss0.60870.65620.65620.65430.56score coherence followed by matchup-recency guardrail
MIN@LAAmiss0.53990.52280.52280.52280.5165score coherence followed by matchup-recency guardrail
OAK@TBhit0.64990.65020.65020.65020.58score coherence followed by matchup-recency guardrail
PHI@NYMmiss0.5620.56120.56120.56120.5442score coherence followed by matchup-recency guardrail
SD@COLhit0.72080.69720.69720.69720.54score coherence followed by matchup-recency guardrail
Pitcher versus batter: patterns across the whole slate

One blown start is noise. The same failure repeating across the slate is a model problem. These are the repeats.

Sides analyzedBroke on pitchingBroke on offenseBothVarianceMean starter ERA errorMean lineup runs vs proj
18233102.16-0.22
Trained winner blend: does it reach the published number?

The blend mixes the trained win classifier with the margin-derived probability. It is only worth its weight if its decision survives the downstream reconciliation to the projected score.

On all 9 games with an applied blend, the blend's side and the published side agree.

Blend side survived on 9 of 9 games; the blend flagged a winner change on 0.

Repeated bias across slates, and the lever that moves it

A bias on one slate is noise. The same sign across slates, large relative to how much it moves between them, is a model defect. Only the ones that pass both tests are turned into a named parameter change; the rest are held deliberately.

starter ERA error (actual minus projected)

Mean 0.09 over 12 slates (sign shared by 0.42 of them, z = 0.17).

starters were hit harder than projected: the run model under-credits opposing offenses.

Hold: no change: this bias is not separable from slate-to-slate noise yet

5 of 12 slates share the sign, mean 0.09 +/- 0.51 standard error: not separable from noise

lineup runs actual minus projected

Mean -0.18 over 12 slates (sign shared by 0.67 of them, z = -0.92).

lineups scored below projection: the run environment is set too high.

Hold: no change: this bias is not separable from slate-to-slate noise yet

8 of 12 slates share the sign, mean -0.18 +/- 0.19 standard error: not separable from noise

SlateGamesWinner accMean starter ERA errorMean lineup runs vs projSides broke on pitchingSides broke on offense
20260916150.6672.09-0.2345
20260915150.400-1.58-0.70112
20260914100.700-0.48-0.2026
20260913150.600-0.070.0328
20260912150.5331.350.5767
20260911150.6670.990.0049
2026091050.600-3.19-1.708
20260909150.6673.361.0787
20260908150.733-0.15-0.23715
20260907110.545-0.86-0.3654
20260906150.6000.74-0.30610
20260905150.533-1.17-0.0726

Score distribution and margin compression

Narrow predicted margins next to wide actual margins is the signature the score-variance tail is too tight.

Predicted margins ≤2: 6 · Actual margins ≥4: 4
GamePred marginActual marginPred − actual
BOS@TEX110
DET@CHW12-1
KC@HOU14-3
LAD@CIN46-2
MIL@PIT23-1
MIN@LAA110
OAK@TB39-6
PHI@NYM13-2
SD@COL37-4

Per-game evidence coverage

Expected games
9
Artifacts loaded
9
Structural audits
9
Deep-audit games
9
Learning rows
9
Starter comparisons
9

Every game, in depth (9)

BOS@TEXMISS

Predicted: TEX 3-4 (conf +0.11, moderate)Actual: BOS 4-3Brier 0.307total bias +0
Root cause: Backed the wrong side with real conviction
Evidence-backed diagnosis
Quantified contributing factors
TeamStarterProjectedActualER err
BOSSonny Gray2 ER / 18 outs3 ER / 19 outs1
TEXTyler Alexander1 ER / 15 outs0 ER / 3 outs-1
Decision internals: run factors home×0.937 / away×0.998; savant lineup adjustment applied

Player-level breakdown (projected vs actual)

Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.

Top deviations that drove the game:

Pitcher versus batter: what actually broke this game

Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.

AWAY pitching

Sonny Gray (BOS) threw 19 outs, 3 ER = 4.26 ERA against a projected 3 ERA (1.26 ERA error)

Bullpen behind him: 0 ER over 3 outs.

The HOME lineup he faced produced 3 runs on 4 hits and 1 HR, against a projected 4 runs / 8 hits (-1 runs vs projection).

Who did the damage to him:

  • Josh Jung: 1-for-4, 1 HR, 1 RBI [+0.62 runs vs projection] season xwOBA 0.347, elite - real projection error
  • Danny Jansen: 2-for-3, 0 HR, 1 RBI [+0.47 runs vs projection] season xwOBA 0.262, weak - a good day, not a model error

Verdict: offense: the lineup scored well below its projection

HOME pitching

Tyler Alexander (TEX) threw 3 outs, 0 ER = 0 ERA against a projected 1.8 ERA (-1.8 ERA error)

Bullpen behind him: 2 ER over 3 outs.

The AWAY lineup he faced produced 2 runs on 5 hits and 1 HR, against a projected 4 runs / 8 hits (-2 runs vs projection).

Who did the damage to him:

  • Trevor Story: 2-for-4, 1 HR, 3 RBI [+1.4 runs vs projection] season xwOBA 0.248, weak - a good day, not a model error
  • Jahmai Jones: 0-for-2, 0 HR, 0 RBI [+0.33 runs vs projection] season xwOBA 0.327, above average - a good day, not a model error

Verdict: neither side broke materially - the result is closer to variance

Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)

PitcherTeamOutsERAERHHRBBexp BBSOexp SOContext (as-of)
BOSSonny Gray (Starter)19 / 184.26 / 33 / 23 / 61 / 03 / 11.736 / 56.05venue away: 2.62 vs 2.91 ERA (ok) · opp run factor 0.94 (average) · 27 prior appearances this season
BOSGarrett Whitlock (Middle Reliever (High Leverage))3 / 30 / 18 (-18.00)0 / 20 / 20 / 01 / 20.110 / 01.37
TEXTyler Alexander (Starter)3 / 150 / 1.80 / 10 / 30 / 11 / 00.850 / 14.43venue home: 4.5 vs 0 ERA (ok) · opp run factor 1 (average) · 68 prior appearances this season
TEXChase Silseth (Middle Reliever (High Leverage))2 / 60 / 00 / 01 / 00 / 00 / 00.612 / 11.29
TEXJakob Junis (Setup Man)1 / 654 / 9 (+45.00)2 / 20 / 10 / 11 / 20.250 / 10.66

Hitters: actual / projected (sorted by run impact vs projection)

BatterTeamABH2B3BHRRBIRBBSORun impactSeason xwOBASignal
Trevor Story (SS)BOS4 / 42 / 10 / 00 / 01 / 03 / 11 / 00 / 02 / 11.40.248 weakgood day
Willson Contreras (1B)BOS3 / 41 / 10 / 00 / 00 / 10 / 10 / 10 / 11 / 1-1.260.377 elitebad day
Corey Seager (SS)TEX4 / 41 / 10 / 00 / 00 / 10 / 10 / 10 / 11 / 1-1.260.352 elitebad day
Nick Sogard (2B)BOS4 / 30 / 10 / 00 / 00 / 00 / 00 / 00 / 10 / 1-0.80.318 averageno signal
Josh Jung (DH)TEX4 / 41 / 10 / 10 / 01 / 01 / 01 / 10 / 00 / 10.620.347 eliteprojection too low
Roman Anthony (LF)BOS4 / 40 / 10 / 00 / 00 / 01 / 00 / 01 / 10 / 1-0.470.348 elite—
Jarren Duran (CF)BOS2 / 30 / 10 / 00 / 00 / 00 / 00 / 00 / 01 / 1-0.470.297 below average—
Ezequiel Duran (3B)TEX4 / 40 / 10 / 00 / 00 / 00 / 10 / 00 / 01 / 1-0.470.306 average—
Brandon Nimmo (RF)TEX4 / 40 / 10 / 00 / 00 / 00 / 10 / 00 / 03 / 1-0.470.345 elite—
Danny Jansen (C)TEX3 / 32 / 10 / 00 / 00 / 01 / 00 / 00 / 00 / 10.470.262 weak—
Jahmai Jones (DH)BOS2 / 30 / 00 / 00 / 00 / 00 / 00 / 01 / 00 / 10.330.327 above average—
Caleb Durbin (3B)BOS3 / 30 / 10 / 00 / 00 / 00 / 00 / 11 / 00 / 0-0.140.293 below average—
Wyatt Langford (LF)TEX2 / 40 / 10 / 00 / 00 / 00 / 01 / 12 / 10 / 1-0.140.316 average—
Jake Burger (1B)TEX3 / 30 / 10 / 00 / 00 / 00 / 11 / 11 / 00 / 1-0.140.315 average—
Nicky Lopez (2B)TEX1 / 30 / 10 / 00 / 00 / 00 / 00 / 01 / 01 / 0-0.140.257 weak—
Wilyer Abreu (RF)BOS3 / 41 / 10 / 10 / 00 / 00 / 11 / 11 / 00 / 10.020.351 elite—
Adley Rutschman (C)BOS4 / 41 / 11 / 10 / 00 / 00 / 10 / 10 / 01 / 100.331 above average—
Evan Carter (CF)TEX2 / 30 / 00 / 00 / 00 / 01 / 00 / 00 / 01 / 100.279 weak—
Full model trace, player evidence, and audit findings

Fundamental evidence entering the pick

SignalHome-away edgeMeaning
Season quality-0.484positive favors home; negative favors away
Recent form0.262positive favors home; negative favors away
Starting-pitcher matchup-0.061positive favors home; negative favors away
Composite-0.154positive favors home; negative favors away

Score and confidence evolution

StageAway-home runsConfidenceWhat changed
historical_ml3.91-4.29n/aBase ML historical model prediction
variance_applied4-4n/aDeterministic baseline target (variance factor 1.0)
enhanced_prediction3-40.554Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run)
embedded_savant_run_environment3-4n/aTarget score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review3-4n/aRefreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target3-4n/aCapped at max 12 realistic runs
simulation_result3-4n/aFinal inning-by-inning simulation result

Official postgame stage attribution

StageBeforeAfterToward final pickWhat changed
variance_applied3.91-4.294-4-0.38Deterministic baseline target (variance factor 1.0)
enhanced_prediction4-43-41Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run)
embedded_savant_run_environment3-43-40Target score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review3-43-40Refreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target3-43-40Capped at max 12 realistic runs
simulation_result3-43-40Final inning-by-inning simulation result

Largest player-level adjustments from the ultra-detailed trace

These are pregame model adjustments, not claims about actual postgame player error.

TeamPlayerRoleNet effectLargest change
BOSSonny Graypitcher / Starterbetterpredicted_SO 2
TEXDanny Jansenbatter / Cworsepredicted_RBI 1.67
TEXJake Burgerbatter / 1Bbetterpredicted_RBI 1.45
BOSCaleb Durbinbatter / 3Bworsepredicted_AB -1.377
BOSTrevor Storybatter / SSworsepredicted_SO -1.339
TEXCorey Seagerbatter / SSworsepredicted_AB -1.27
BOSRoman Anthonybatter / LFbetterpredicted_SO -1.217
BOSJarren Duranbatter / CFworsepredicted_SO -1.143

Structural audit findings

SeverityRuleFindingSubject
infoCURRENT_PITCHER_DUPLICATIONBOS pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.BOS
infoCURRENT_PITCHER_DUPLICATIONTEX pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.TEX
infoCURRENT_FINALIZED_MATCH_BOXBOS model-prediction batting totals differ from final simulation box score (AB: current=32, sim=31; H: current=8, sim=4; 2B: current=2, sim=0; HR: current=1, sim=3; RBI: current=4, sim=3; R: current=4, sim=3; BB: current=3, sim=2; SO: current=8, sim=3).BOS
infoCURRENT_PLAYER_MATCH_BOXBOS current finalized hitter lines are model predictions and differ from the simulation box score: Roman Anthony: HR current=0 box=1, RBI current=0 box=1, R current=0 box=1, BB current=1 box=0; Adley Rutschman: 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=1 box=0; Trevor Story: H current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Jarren Duran: H current=1 box=0, SO current=1 box=0; Jahmai Jones: H current=0 box=1, HR current=0 box=1, RBI current=0 box=1, R current=0 box=1; Wilyer Abreu: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Caleb Durbin: AB current=3 box=2, H current=1 box=0, R current=1 box=0, BB current=0 box=1; Willson Contreras: BB current=1 box=0BOS
infoCURRENT_FINALIZED_MATCH_BOXTEX model pitcher projections differ from final simulation pitching box score (HR: current=2, sim=3).TEX
infoCURRENT_FINALIZED_MATCH_BOXTEX model-prediction batting totals differ from final simulation box score (2B: current=1, sim=5; HR: current=1, sim=0; BB: current=2, sim=3; SO: current=8, sim=5).TEX
infoCURRENT_PLAYER_MATCH_BOXTEX current finalized hitter lines are model predictions and differ from the simulation box score: Josh Jung: R current=1 box=0, SO current=1 box=0; Ezequiel Duran: 2B current=0 box=1, RBI current=1 box=0; Wyatt Langford: H current=1 box=2, 2B current=0 box=1, BB current=1 box=0; Corey Seager: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Jake Burger: 2B current=0 box=1, RBI current=1 box=2, BB current=0 box=1, SO current=1 box=0; Brandon Nimmo: H current=1 box=2, 2B current=0 box=1, RBI current=1 box=0, R current=0 box=1; Nicky Lopez: H current=1 box=0, BB current=0 box=1; Danny Jansen: AB current=3 box=4, RBI current=0 box=2, R current=0 box=1, SO current=1 box=2TEX
infoRECONCILIATION_PROPAGATIONNo score_target_reconciliation step was used for this game.

DET@CHWMISS

Predicted: DET 5-4 (conf -0.06, lean)Actual: CHW 1-3Brier 0.281total bias +5
Root cause: Starting-pitcher projection was wrong
Evidence-backed diagnosis
Quantified contributing factors
TeamStarterProjectedActualER err
DETFramber Valdez3 ER / 18 outs3 ER / 15 outs0
CHWErick Fedde5 ER / 14 outs1 ER / 14 outs-4
Decision internals: run factors home×1.055 / away×0.972; savant lineup adjustment applied

Player-level breakdown (projected vs actual)

Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.

Top deviations that drove the game:

Pitcher versus batter: what actually broke this game

Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.

AWAY pitching

Framber Valdez (DET) threw 15 outs, 3 ER = 5.4 ERA against a projected 4.5 ERA (0.9 ERA error)

Bullpen behind him: 0 ER over 0 outs.

The HOME lineup he faced produced 2 runs on 3 hits and 0 HR, against a projected 2 runs / 5 hits (0 runs vs projection).

Who did the damage to him:

  • Brenton Doyle: 2-for-4, 0 HR, 0 RBI [+0.47 runs vs projection] season xwOBA 0.236, weak - a good day, not a model error
  • Jake Rogers: 0-for-3, 0 HR, 0 RBI [+0.33 runs vs projection] season xwOBA 0.269, weak - a good day, not a model error

Verdict: offense: the lineup scored well below its projection

HOME pitching

No settled pitching line for this club. The forecast named Erick Fedde (CHW) at a projected 9.64 ERA, but the per-player feed carries no pitching row for him in this game, so the actual-versus-projected comparison cannot be made on this side. That is a source-coverage gap in the settled box, not a forecasting failure.

Bullpen behind him: 0 ER over 0 outs.

The AWAY lineup he faced produced 1 runs on 8 hits and 0 HR, against a projected 6 runs / 8 hits (-5 runs vs projection).

Who did the damage to him:

  • Kevin McGonigle: 2-for-4, 0 HR, 0 RBI [+0.47 runs vs projection] season xwOBA 0.357, elite - a good day, not a model error
  • Spencer Torkelson: 1-for-3, 0 HR, 0 RBI [+0.47 runs vs projection] season xwOBA 0.312, average - a good day, not a model error

Verdict: neither side broke materially - the result is closer to variance

Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)

PitcherTeamOutsERAERHHRBBexp BBSOexp SOContext (as-of)
DETFramber Valdez (Starter)15 / 185.4 / 4.53 / 33 / 51 / 04 / 52.228 / 83.39venue away: 4.02 vs 4 ERA (ok) · opp run factor 1.06 (average) · 29 prior appearances this season

Hitters: actual / projected (sorted by run impact vs projection)

BatterTeamABH2B3BHRRBIRBBSORun impactSeason xwOBASignal
Riley Greene (LF)DET4 / 41 / 10 / 10 / 00 / 00 / 10 / 10 / 12 / 1-0.640.372 elitebad day
Dillon Dingler (C)DET4 / 41 / 11 / 00 / 00 / 10 / 10 / 10 / 00 / 1-0.620.338 above averagebad day
Kevin McGonigle (3B)DET4 / 42 / 10 / 00 / 00 / 00 / 10 / 11 / 11 / 00.470.357 elite—
Zach McKinstry (RF)DET2 / 30 / 10 / 00 / 00 / 00 / 00 / 00 / 00 / 0-0.470.285 below average—
Spencer Torkelson (1B)DET3 / 31 / 00 / 00 / 00 / 00 / 00 / 11 / 11 / 10.470.312 average—
Javier Báez (2B)DET3 / 30 / 10 / 00 / 00 / 00 / 00 / 00 / 03 / 1-0.470.255 weak—
Brenton Doyle (CF)CHW4 / 32 / 10 / 00 / 00 / 00 / 00 / 00 / 02 / 10.470.236 weak—
Miguel Vargas (3B)CHW3 / 40 / 10 / 00 / 00 / 00 / 10 / 11 / 11 / 1-0.470.379 elite—
Randal Grichuk (LF)CHW3 / 40 / 10 / 10 / 00 / 00 / 11 / 01 / 00 / 1-0.450.336 above average—
Jake Rogers (C)CHW3 / 30 / 00 / 00 / 00 / 00 / 00 / 01 / 02 / 10.330.269 weak—
Chase Meidroth (2B)CHW4 / 41 / 10 / 00 / 00 / 00 / 01 / 10 / 10 / 1-0.330.297 below average—
Tommy Pham (DH)CHW2 / 30 / 10 / 00 / 00 / 00 / 10 / 01 / 02 / 1-0.140.21 weak—
Gleyber Torres (DH)DET4 / 41 / 10 / 00 / 00 / 01 / 00 / 11 / 11 / 100.325 above average—
Max Clark (CF)DET3 / 31 / 10 / 00 / 00 / 00 / 01 / 10 / 01 / 100.311 average—
John Peck (SS)DET4 / 31 / 10 / 00 / 00 / 00 / 10 / 00 / 01 / 100.332 above average—
Luisangel Acuña (SS)CHW3 / 30 / 00 / 00 / 00 / 00 / 00 / 00 / 01 / 000.265 weak—
Full model trace, player evidence, and audit findings

Fundamental evidence entering the pick

SignalHome-away edgeMeaning
Season quality-0.442positive favors home; negative favors away
Recent form-0.77positive favors home; negative favors away
Starting-pitcher matchup0.084positive favors home; negative favors away
Composite-0.431positive favors home; negative favors away

Score and confidence evolution

StageAway-home runsConfidenceWhat changed
historical_ml4.54-4.38n/aBase ML historical model prediction
variance_applied5-4n/aDeterministic baseline target (variance factor 1.0)
enhanced_prediction5-40.53Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail)
embedded_savant_run_environment5-4n/aTarget score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review5-4n/aRefreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target5-4n/aCapped at max 12 realistic runs
simulation_result5-4n/aFinal inning-by-inning simulation result

Official postgame stage attribution

StageBeforeAfterToward final pickWhat changed
variance_applied4.54-4.385-40.844Deterministic baseline target (variance factor 1.0)
enhanced_prediction5-45-4-0Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail)
embedded_savant_run_environment5-45-4-0Target score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review5-45-4-0Refreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target5-45-4-0Capped at max 12 realistic runs
simulation_result5-45-4-0Final inning-by-inning simulation result

Largest player-level adjustments from the ultra-detailed trace

These are pregame model adjustments, not claims about actual postgame player error.

TeamPlayerRoleNet effectLargest change
DETJavier Báezbatter / 2Bbetterpredicted_RBI 3.66
DETFramber Valdezpitcher / Starterbetterpredicted_SO 3
CHWRandal Grichukbatter / LFworsepredicted_AB 2.5
CHWChase Meidrothbatter / 2Bworsepredicted_SO 2.069
CHWMiguel Vargasbatter / 3Bworsepredicted_H 1.89
DETMax Clarkbatter / CFworsepredicted_AB -1.73
CHWMunetaka Murakamibatter / 1Bworsepredicted_AB -1.578
CHWTommy Phambatter / DHbetterpredicted_AB 1.5

Structural audit findings

SeverityRuleFindingSubject
infoCURRENT_PITCHER_DUPLICATIONCHW pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.CHW
infoCURRENT_PITCHER_DUPLICATIONDET pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.DET
infoCURRENT_FINALIZED_MATCH_BOXCHW model-prediction batting totals differ from final simulation box score (AB: current=31, sim=33; H: current=7, sim=8; 2B: current=1, sim=0; HR: current=1, sim=0; BB: current=4, sim=5; SO: current=8, sim=12; SF: current=0, sim=2).CHW
infoCURRENT_PLAYER_MATCH_BOXCHW current finalized hitter lines are model predictions and differ from the simulation box score: Tommy Pham: AB current=3 box=4, R current=0 box=1, BB current=0 box=1, SO current=1 box=2; Munetaka Murakami: AB current=4 box=2, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Randal Grichuk: AB current=4 box=5, 2B current=1 box=0, RBI current=1 box=0, SO current=1 box=2; Brenton Doyle: RBI current=0 box=1, R current=0 box=1, SF current=0 box=1; Jake Rogers: BB current=0 box=1, SO current=1 box=2; Braden Montgomery: AB current=3 box=4, RBI current=0 box=1, BB current=1 box=0; Chase Meidroth: H current=1 box=0, RBI current=0 box=1, BB current=1 box=0, SO current=1 box=3; Miguel Vargas: AB current=4 box=5, H current=1 box=3, RBI current=1 box=0, R current=1 box=0CHW
infoCURRENT_FINALIZED_MATCH_BOXDET model-prediction batting totals differ from final simulation box score (AB: current=31, sim=32; H: current=8, sim=5; 2B: current=1, sim=2; HR: current=1, sim=2; RBI: current=4, sim=5; R: current=6, sim=5; BB: current=4, sim=3; SO: current=7, sim=6).DET
infoCURRENT_PLAYER_MATCH_BOXDET current finalized hitter lines are model predictions and differ from the simulation box score: Gleyber Torres: AB current=4 box=3, H current=1 box=0; Kevin McGonigle: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Zach McKinstry: AB current=3 box=4, R current=0 box=1; Riley Greene: RBI current=1 box=0, BB current=1 box=0; Spencer Torkelson: AB current=3 box=4, R current=1 box=0, BB current=1 box=0, SO current=1 box=0; Javier Báez: AB current=3 box=2, H current=1 box=2, HR current=0 box=2, RBI current=0 box=4; Dillon Dingler: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Max Clark: H current=1 box=0, R current=1 box=0, BB current=0 box=1, SO current=1 box=0DET
infoRECONCILIATION_PROPAGATIONNo score_target_reconciliation step was used for this game.

KC@HOUHIT

Predicted: HOU 4-5 (conf +0.06, lean)Actual: HOU 2-6Brier 0.221total bias +1
Root cause: Solid correct call
Evidence-backed diagnosis
Quantified contributing factors
TeamStarterProjectedActualER err
KCSeth Lugo1 ER / 15 outs4 ER / 15 outs3
HOUMiguel Ullola4 ER / 9 outs1 ER / 2 outs-3
Decision internals: run factors home×0.996 / away×0.985; savant lineup adjustment applied

Player-level breakdown (projected vs actual)

Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.

Top deviations that drove the game:

Starter miss: Seth Lugo (KC) posted 7.20 ERA vs projected 1.80 (4 ER in 15 outs); he is materially worse pitching away (6.03 ERA there vs 4.09 on the other side), a venue-role weakness the model under-weighted.

What to do: Enable/raise the venue-split weight (context.venue_adjustment_weight) and validate in shadow; the split is credible for this starter.

Pitcher versus batter: what actually broke this game

Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.

AWAY pitching

Seth Lugo (KC) threw 15 outs, 4 ER = 7.2 ERA against a projected 1.8 ERA (5.4 ERA error)

Bullpen behind him: 0 ER over 0 outs.

The HOME lineup he faced produced 6 runs on 11 hits and 5 HR, against a projected 4 runs / 8 hits (2 runs vs projection).

Who did the damage to him:

  • LaMonte Wade Jr.: 2-for-4, 1 HR, 1 RBI [+1.85 runs vs projection] season xwOBA 0.272, weak - a good day, not a model error
  • Taylor Trammell: 1-for-3, 1 HR, 1 RBI [+1.26 runs vs projection] season xwOBA 0.289, below average - a good day, not a model error
  • Jeremy Peña: 2-for-5, 1 HR, 2 RBI [+1.09 runs vs projection] season xwOBA 0.327, above average - real projection error

Verdict: both: the starter was hit hard AND the lineup underproduced

HOME pitching

Miguel Ullola (HOU) threw 2 outs, 1 ER = 13.5 ERA against a projected 12 ERA (1.5 ERA error) only 6 prior appearances in the covered season - the projection had little of his own record to stand on

Bullpen behind him: 0 ER over 4 outs.

The AWAY lineup he faced produced 2 runs on 3 hits and 0 HR, against a projected 4 runs / 7 hits (-2 runs vs projection).

Who did the damage to him:

  • John Rave: 1-for-3, 0 HR, 0 RBI [+0.31 runs vs projection] season xwOBA 0.318, average - a good day, not a model error

Verdict: neither side broke materially - the result is closer to variance

Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)

PitcherTeamOutsERAERHHRBBexp BBSOexp SOContext (as-of)
KCSeth Lugo (Starter)15 / 157.2 / 1.8 (+5.40)4 / 18 / 54 / 01 / 11.415 / 53.56venue away: 6.03 vs 4.09 ERA (worse here) · opp run factor 1 (average) · 30 prior appearances this season
HOUMiguel Ullola (Starter)2 / 913.5 / 121 / 40 / 50 / 22 / 100 / 50opp run factor 0.99 (weak) · 6 prior appearances this season
HOUBryan Abreu (Setup Man)1 / 60 / 00 / 00 / 00 / 00 / 00.531 / 11.34
HOUJosh Hader (Closer)3 / 60 / 00 / 00 / 00 / 00 / 00.20 / 01.22

Hitters: actual / projected (sorted by run impact vs projection)

BatterTeamABH2B3BHRRBIRBBSORun impactSeason xwOBASignal
LaMonte Wade Jr. (1B)HOU4 / 32 / 01 / 00 / 01 / 01 / 01 / 00 / 11 / 11.850.272 weakgood day
Taylor Trammell (LF)HOU3 / 31 / 10 / 00 / 01 / 01 / 02 / 01 / 01 / 11.260.289 below averagegood day
Jeremy Peña (SS)HOU5 / 42 / 10 / 10 / 01 / 02 / 11 / 10 / 01 / 11.090.327 above averageprojection too low
Daulton Varsho (CF)HOU4 / 41 / 10 / 00 / 01 / 01 / 01 / 00 / 01 / 10.930.285 below averagegood day
Jac Caglianone (DH)KC2 / 40 / 10 / 10 / 00 / 00 / 10 / 00 / 01 / 1-0.780.353 elitebad day
Michael Massey (2B)KC4 / 40 / 10 / 00 / 00 / 00 / 00 / 00 / 01 / 1-0.470.309 average—
Salvador Perez (1B)KC3 / 40 / 10 / 00 / 00 / 00 / 10 / 00 / 00 / 1-0.470.31 average—
Bobby Witt Jr. (SS)KC3 / 40 / 10 / 00 / 00 / 00 / 00 / 11 / 12 / 1-0.470.379 elite—
Maikel Garcia (3B)KC4 / 40 / 10 / 00 / 00 / 00 / 10 / 10 / 00 / 1-0.470.317 average—
Cam Smith (RF)HOU3 / 30 / 10 / 00 / 00 / 00 / 00 / 00 / 02 / 1-0.470.319 average—
Carter Jensen (C)KC3 / 42 / 10 / 00 / 00 / 11 / 11 / 11 / 10 / 1-0.460.314 average—
Isaac Collins (LF)KC3 / 30 / 00 / 00 / 00 / 00 / 00 / 00 / 10 / 1-0.330.298 below average—
John Rave (RF)KC3 / 31 / 11 / 00 / 00 / 00 / 01 / 10 / 01 / 10.310.318 average—
Jose Altuve (2B)HOU4 / 41 / 11 / 00 / 00 / 00 / 00 / 10 / 01 / 10.310.271 weak—
Yordan Alvarez (DH)HOU4 / 42 / 10 / 00 / 01 / 11 / 11 / 10 / 10 / 10.140.443 elite—
Kyle Isbel (CF)KC3 / 30 / 00 / 00 / 00 / 00 / 00 / 00 / 01 / 100.26 weak—
Isaac Paredes (3B)HOU3 / 41 / 10 / 00 / 00 / 00 / 10 / 11 / 10 / 000.319 average—
Yainer Diaz (C)HOU4 / 41 / 10 / 00 / 00 / 00 / 10 / 00 / 00 / 000.304 average—
Full model trace, player evidence, and audit findings

Fundamental evidence entering the pick

SignalHome-away edgeMeaning
Season quality0.118positive favors home; negative favors away
Recent form-0.234positive favors home; negative favors away
Starting-pitcher matchup0.011positive favors home; negative favors away
Composite0.211positive favors home; negative favors away

Score and confidence evolution

StageAway-home runsConfidenceWhat changed
historical_ml3.5-5.67n/aBase ML historical model prediction
variance_applied4-6n/aDeterministic baseline target (variance factor 1.0)
enhanced_prediction4-50.53Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail)
embedded_savant_run_environment4-5n/aTarget score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review4-5n/aRefreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target4-5n/aCapped at max 12 realistic runs
simulation_result4-5n/aFinal inning-by-inning simulation result

Official postgame stage attribution

StageBeforeAfterToward final pickWhat changed
variance_applied3.5-5.674-6-0.168Deterministic baseline target (variance factor 1.0)
enhanced_prediction4-64-5-1Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail)
embedded_savant_run_environment4-54-50Target score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review4-54-50Refreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target4-54-50Capped at max 12 realistic runs
simulation_result4-54-50Final inning-by-inning simulation result

Largest player-level adjustments from the ultra-detailed trace

These are pregame model adjustments, not claims about actual postgame player error.

TeamPlayerRoleNet effectLargest change
HOUCam Smithbatter / RFbetterpredicted_RBI 4.67
KCBobby Witt Jr.batter / SSworsepredicted_AB -1.59
HOUYordan Alvarezbatter / DHworsepredicted_SO 1.231
KCMaikel Garciabatter / 3Bworsepredicted_H -1.19
HOUJose Altuvebatter / 2Bworsepredicted_SO 1.161
KCJohn Ravebatter / RFworsepredicted_AB 1.077
KCMichael Masseybatter / 2Bworsepredicted_AB -1.06
HOUMiguel Ullolapitcher / Starterworsepredicted_IP -1

Structural audit findings

SeverityRuleFindingSubject
infoCURRENT_PITCHER_DUPLICATIONHOU pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.HOU
infoCURRENT_PITCHER_DUPLICATIONKC pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.KC
infoCURRENT_FINALIZED_MATCH_BOXHOU model-prediction batting totals differ from final simulation box score (AB: current=33, sim=34; H: current=8, sim=10; 2B: current=1, sim=2; 3B: current=0, sim=1; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=2; SO: current=7, sim=9).HOU
infoCURRENT_PLAYER_MATCH_BOXHOU current finalized hitter lines are model predictions and differ from the simulation box score: Yordan Alvarez: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Jose Altuve: H current=1 box=2, SO current=1 box=2; Isaac Paredes: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Jeremy Peña: AB current=4 box=5, H current=1 box=2, RBI current=1 box=0, SO current=1 box=2; Yainer Diaz: RBI current=1 box=0, R current=0 box=1, SO current=0 box=1; LaMonte Wade Jr.: BB current=1 box=0, HBP current=0 box=1; Taylor Trammell: R current=0 box=1, BB current=0 box=1; Cam Smith: AB current=3 box=4, H current=1 box=3, 2B current=0 box=1, HR current=0 box=1HOU
infoCURRENT_FINALIZED_MATCH_BOXKC model-prediction batting totals differ from final simulation box score (AB: current=33, sim=32; H: current=7, sim=5; HR: current=1, sim=2; BB: current=3, sim=2; SO: current=9, sim=6).KC
infoCURRENT_PLAYER_MATCH_BOXKC current finalized hitter lines are model predictions and differ from the simulation box score: Jac Caglianone: 2B current=1 box=0, HR current=0 box=1, R current=0 box=1; Michael Massey: AB current=4 box=3, BB current=0 box=1, SO current=1 box=0; Salvador Perez: R current=0 box=1; Bobby Witt Jr.: AB current=4 box=3, HR current=0 box=1, RBI current=0 box=1; Maikel Garcia: H current=1 box=0, RBI current=1 box=0, R current=1 box=0; John Rave: AB current=3 box=4, H current=1 box=0, R current=1 box=0, SO current=1 box=0; Carter Jensen: 2B current=0 box=1, HR current=1 box=0, BB current=1 box=0; Kyle Isbel: SO current=1 box=0KC
infoRECONCILIATION_PROPAGATIONNo score_target_reconciliation step was used for this game.

LAD@CINHIT

Predicted: LAD 9-5 (conf -0.12, moderate)Actual: LAD 8-2Brier 0.194total bias +4
Root cause: Solid correct call
Evidence-backed diagnosis
Quantified contributing factors
TeamStarterProjectedActualER err
LADJustin Wrobleski3 ER / 15 outs0 ER / 9 outs-3
CINBrady Singer4 ER / 14 outs7 ER / 10 outs3
Decision internals: run factors home×1.002 / away×1.06; savant lineup adjustment applied

Player-level breakdown (projected vs actual)

Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.

Top deviations that drove the game:

Starter miss: Brady Singer (CIN) posted 18.90 ERA vs projected 7.71 (7 ER in 10 outs); he faced a strong offense (opponent run factor 1.06, bucket strong).

What to do: Consider raising context.opponent_strength_weight; validate across the rolling window before promotion.

Pitcher versus batter: what actually broke this game

Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.

AWAY pitching

Justin Wrobleski (LAD) threw 9 outs, 0 ER = 0 ERA against a projected 5.4 ERA (-5.4 ERA error)

Bullpen behind him: 0 ER over 0 outs.

The HOME lineup he faced produced 2 runs on 6 hits and 1 HR, against a projected 3 runs / 7 hits (-1 runs vs projection).

Who did the damage to him:

  • Sal Stewart: 2-for-4, 1 HR, 1 RBI [+1.4 runs vs projection] season xwOBA 0.346, elite - real projection error
  • TJ Friedl: 2-for-3, 0 HR, 0 RBI [+0.94 runs vs projection] season xwOBA 0.249, weak - a good day, not a model error
  • Héctor Rodríguez: 1-for-3, 0 HR, 0 RBI [+0.62 runs vs projection] season xwOBA 0.259, weak - a good day, not a model error

Verdict: neither side broke materially - the result is closer to variance

HOME pitching

Brady Singer (CIN) threw 10 outs, 7 ER = 18.9 ERA against a projected 7.71 ERA (11.19 ERA error)

Bullpen behind him: 0 ER over 8 outs.

The AWAY lineup he faced produced 8 runs on 11 hits and 2 HR, against a projected 4 runs / 7 hits (4 runs vs projection).

Who did the damage to him:

  • Kyle Tucker: 4-for-5, 1 HR, 3 RBI [+2.63 runs vs projection] season xwOBA 0.33, above average - real projection error
  • Miguel Rojas: 2-for-5, 1 HR, 1 RBI [+1.87 runs vs projection] season xwOBA 0.304, average - a good day, not a model error
  • Teoscar Hernández: 1-for-4, 0 HR, 0 RBI [+0.33 runs vs projection] season xwOBA 0.335, above average - a good day, not a model error

Verdict: pitching: the starter gave up runs at a far worse rate than projected

Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)

PitcherTeamOutsERAERHHRBBexp BBSOexp SOContext (as-of)
LADJustin Wrobleski (Starter)9 / 150 / 5.4 (-5.40)0 / 30 / 60 / 00 / 11.653 / 45.27venue away: 3.86 vs 3.43 ERA (ok) · opp run factor 1 (weak) · 24 prior appearances this season
CINBrady Singer (Starter)10 / 1418.9 / 7.71 (+11.19)7 / 49 / 71 / 04 / 42.70 / 84.46venue home: 4.5 vs 6.37 ERA (ok) · opp run factor 1.06 (strong) · 29 prior appearances this season
CINLuis Mey (Setup Man)5 / 30 / 00 / 01 / 10 / 00 / 10.722 / 11.59
CINTony Santillan (Middle Reliever (High Leverage))3 / 30 / 00 / 00 / 00 / 02 / 00.820 / 01.04

Hitters: actual / projected (sorted by run impact vs projection)

BatterTeamABH2B3BHRRBIRBBSORun impactSeason xwOBASignal
Kyle Tucker (RF)LAD5 / 44 / 12 / 00 / 01 / 03 / 12 / 10 / 10 / 12.630.33 above averageprojection too low
Miguel Rojas (SS)LAD5 / 32 / 00 / 00 / 01 / 01 / 02 / 00 / 00 / 01.870.304 averageno signal
Elly De La Cruz (DH)CIN4 / 40 / 10 / 00 / 00 / 10 / 10 / 10 / 13 / 1-1.730.378 elitebad day
Sal Stewart (1B)CIN4 / 42 / 10 / 00 / 01 / 01 / 12 / 10 / 01 / 11.40.346 eliteprojection too low
Dane Myers (CF)CIN3 / 40 / 10 / 10 / 00 / 00 / 00 / 00 / 11 / 1-1.110.313 averageno signal
TJ Friedl (LF)CIN3 / 32 / 00 / 00 / 00 / 00 / 00 / 00 / 01 / 10.940.249 weakgood day
Héctor Rodríguez (RF)CIN3 / 41 / 10 / 01 / 00 / 00 / 00 / 00 / 01 / 10.620.259 weakgood day
Max Muncy (3B)LAD4 / 42 / 11 / 00 / 00 / 12 / 10 / 10 / 10 / 1-0.480.345 elite—
Tommy Edman (CF)LAD4 / 40 / 10 / 00 / 00 / 00 / 10 / 10 / 01 / 1-0.470.306 average—
Juan Brito (2B)CIN4 / 40 / 10 / 00 / 00 / 01 / 10 / 00 / 00 / 1-0.470.292 below average—
Matt McLain (SS)CIN4 / 40 / 10 / 00 / 00 / 00 / 00 / 10 / 01 / 1-0.470.302 below average—
Teoscar Hernández (LF)LAD4 / 41 / 10 / 00 / 00 / 00 / 11 / 11 / 01 / 10.330.335 above average—
Tyler Stephenson (C)CIN3 / 41 / 10 / 00 / 00 / 00 / 10 / 00 / 10 / 1-0.330.33 above average—
Hunter Feduccia (C)LAD3 / 30 / 10 / 00 / 00 / 00 / 00 / 02 / 01 / 10.190.319 average—
Freddie Freeman (1B)LAD3 / 42 / 10 / 10 / 00 / 01 / 02 / 01 / 10 / 10.160.365 elite—
Alex Freeland (2B)LAD4 / 30 / 10 / 00 / 00 / 00 / 01 / 01 / 00 / 1-0.140.294 below average—
Ke'Bryan Hayes (3B)CIN3 / 30 / 00 / 00 / 00 / 00 / 00 / 00 / 00 / 100.295 below average—
Full model trace, player evidence, and audit findings

Fundamental evidence entering the pick

SignalHome-away edgeMeaning
Season quality-1.929positive favors home; negative favors away
Recent form-1.414positive favors home; negative favors away
Starting-pitcher matchup-0.059positive favors home; negative favors away
Composite-2.264positive favors home; negative favors away

Score and confidence evolution

StageAway-home runsConfidenceWhat changed
historical_ml4.84-4.01n/aBase ML historical model prediction
variance_applied5-4n/aDeterministic baseline target (variance factor 1.0)
enhanced_prediction8-50.56Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail)
embedded_savant_run_environment9-5n/aTarget score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review9-5n/aRefreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target9-5n/aCapped at max 12 realistic runs
simulation_result9-5n/aFinal inning-by-inning simulation result

Official postgame stage attribution

StageBeforeAfterToward final pickWhat changed
variance_applied4.84-4.015-40.171Deterministic baseline target (variance factor 1.0)
enhanced_prediction5-48-52Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail)
embedded_savant_run_environment8-59-51Target score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review9-59-5-0Refreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target9-59-5-0Capped at max 12 realistic runs
simulation_result9-59-5-0Final inning-by-inning simulation result

Largest player-level adjustments from the ultra-detailed trace

These are pregame model adjustments, not claims about actual postgame player error.

TeamPlayerRoleNet effectLargest change
LADKyle Tuckerbatter / RFbetterpredicted_RBI 5.46
LADJosue De Paulabatter / DHboostedpredicted_H 2.6
LADTommy Edmanbatter / CFworsepredicted_AB 2.394
CINDane Myersbatter / CFbetterpredicted_H 1.97
CINElly De La Cruzbatter / DHworsepredicted_H 1.862
LADAlex Freelandbatter / 2Bworsepredicted_BB 1.675
LADMiguel Rojasbatter / SSbetterpredicted_AB 1.5
LADHunter Feducciabatter / Cworsepredicted_AB 1.462

Structural audit findings

SeverityRuleFindingSubject
infoCURRENT_PITCHER_DUPLICATIONCIN pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.CIN
infoCURRENT_PITCHER_DUPLICATIONLAD pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.LAD
infoCURRENT_FINALIZED_MATCH_BOXCIN model pitcher projections differ from final simulation pitching box score (ER: current=8, sim=9).CIN
infoCURRENT_FINALIZED_MATCH_BOXCIN model-prediction batting totals differ from final simulation box score (AB: current=34, sim=38; H: current=7, sim=11; RBI: current=4, sim=5; R: current=3, sim=5; BB: current=3, sim=1; HBP: current=0, sim=1).CIN
infoCURRENT_PLAYER_MATCH_BOXCIN current finalized hitter lines are model predictions and differ from the simulation box score: Elly De La Cruz: AB current=4 box=5, H current=1 box=3, HR current=1 box=0, RBI current=1 box=0; Juan Brito: R current=0 box=1; Matt McLain: RBI current=0 box=1, SO current=1 box=0; Héctor Rodríguez: RBI current=0 box=1, R current=0 box=1; Ke'Bryan Hayes: AB current=3 box=4, SO current=1 box=2; TJ Friedl: AB current=3 box=4, H current=0 box=1, SO current=1 box=0; Sal Stewart: 2B current=0 box=1, BB current=0 box=1, SO current=1 box=2; Tyler Stephenson: H current=1 box=0, RBI current=1 box=0, BB current=1 box=0, SO current=1 box=2CIN
infoCURRENT_FINALIZED_MATCH_BOXLAD model-prediction batting totals differ from final simulation box score (AB: current=32, sim=38; H: current=8, sim=11; 2B: current=1, sim=2; 3B: current=0, sim=1; RBI: current=4, sim=9; R: current=4, sim=9; BB: current=4, sim=8; SO: current=7, sim=9).LAD
infoCURRENT_PLAYER_MATCH_BOXLAD current finalized hitter lines are model predictions and differ from the simulation box score: Tommy Edman: AB current=4 box=6; Max Muncy: 2B current=0 box=1, HR current=1 box=0, RBI current=1 box=0; Josue De Paula: AB current=3 box=5, H current=1 box=3, R current=0 box=1, BB current=1 box=0; Kyle Tucker: H current=1 box=2, 3B current=0 box=1, HR current=0 box=1, RBI current=1 box=6; Freddie Freeman: H current=1 box=2, 2B current=1 box=0, RBI current=0 box=1, R current=0 box=1; Miguel Rojas: AB current=3 box=4, H current=0 box=1, 2B current=0 box=1, R current=0 box=1; Teoscar Hernández: BB current=0 box=1, SO current=1 box=2; Hunter Feduccia: AB current=3 box=4, H current=1 box=0, R current=0 box=1, BB current=0 box=1LAD
infoRECONCILIATION_PROPAGATIONNo score_target_reconciliation step was used for this game.

MIL@PITMISS

Predicted: MIL 6-4 (conf -0.12, moderate)Actual: PIT 4-7Brier 0.314total bias -1
Root cause: Backed the wrong side with real conviction
Evidence-backed diagnosis
Quantified contributing factors
TeamStarterProjectedActualER err
MILKyle Harrison3 ER / 15 outs4 ER / 5 outs1
PITWilber Dotel1 ER / 15 outs1 ER / 6 outs0
Decision internals: run factors home×0.95 / away×1.011; savant lineup adjustment applied

Player-level breakdown (projected vs actual)

Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.

Top deviations that drove the game:

Starter miss: Kyle Harrison (MIL) posted 21.60 ERA vs projected 5.40 (4 ER in 5 outs); he is materially worse pitching away (6.21 ERA there vs 1.26 on the other side), a venue-role weakness the model under-weighted.

What to do: Enable/raise the venue-split weight (context.venue_adjustment_weight) and validate in shadow; the split is credible for this starter.

Pitcher versus batter: what actually broke this game

Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.

AWAY pitching

Kyle Harrison (MIL) threw 5 outs, 4 ER = 21.6 ERA against a projected 5.4 ERA (16.2 ERA error)

Bullpen behind him: 2 ER over 3 outs.

The HOME lineup he faced produced 7 runs on 7 hits and 1 HR, against a projected 5 runs / 9 hits (2 runs vs projection).

Who did the damage to him:

  • Henry Davis: 1-for-2, 1 HR, 2 RBI [+1.26 runs vs projection] season xwOBA 0.285, below average - a good day, not a model error
  • Brandon Lowe: 1-for-2, 0 HR, 1 RBI [+0.64 runs vs projection] season xwOBA 0.323, above average - real projection error
  • Konnor Griffin: 1-for-4, 0 HR, 2 RBI [+0.33 runs vs projection] season xwOBA 0.3, below average - a good day, not a model error

Verdict: pitching: the starter gave up runs at a far worse rate than projected

HOME pitching

Wilber Dotel (PIT) threw 6 outs, 1 ER = 4.5 ERA against a projected 1.8 ERA (2.7 ERA error)

Bullpen behind him: 2 ER over 8 outs.

The AWAY lineup he faced produced 3 runs on 7 hits and 1 HR, against a projected 4 runs / 8 hits (-1 runs vs projection).

Who did the damage to him:

  • Bo Naylor: 1-for-3, 1 HR, 2 RBI [+1.73 runs vs projection] season xwOBA 0.296, below average - a good day, not a model error
  • Sal Frelick: 2-for-3, 0 HR, 1 RBI [+0.47 runs vs projection] season xwOBA 0.281, weak - a good day, not a model error
  • Joey Ortiz: 1-for-4, 0 HR, 0 RBI [+0.33 runs vs projection] season xwOBA 0.3, below average - a good day, not a model error

Verdict: neither side broke materially - the result is closer to variance

Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)

PitcherTeamOutsERAERHHRBBexp BBSOexp SOContext (as-of)
MILKyle Harrison (Starter)5 / 1521.6 / 5.4 (+16.20)4 / 34 / 40 / 12 / 42.12 / 54.93venue away: 6.21 vs 1.26 ERA (worse here) · opp run factor 0.95 (average) · 24 prior appearances this season
MILAaron Ashby (Middle Reliever (High Leverage))3 / 318 / 9 (+9.00)2 / 12 / 11 / 01 / 00.480 / 01.12
PITWilber Dotel (Starter)6 / 154.5 / 1.81 / 13 / 40 / 01 / 302 / 62.44opp run factor 1.01 (strong) · 19 prior appearances this season
PITGregory Soto (Middle Reliever (High Leverage))2 / 30 / 36 (-36.00)0 / 41 / 50 / 10 / 00.590 / 11.32
PITLuke Weaver (Setup Man)2 / 327 / 0 (+27.00)2 / 03 / 01 / 00 / 20.280 / 11.06
PITMason Montgomery (Closer)4 / 30 / 9 (-9.00)0 / 10 / 10 / 12 / 00.342 / 31.46

Hitters: actual / projected (sorted by run impact vs projection)

BatterTeamABH2B3BHRRBIRBBSORun impactSeason xwOBASignal
Bo Naylor (C)MIL3 / 31 / 00 / 00 / 01 / 02 / 01 / 01 / 01 / 11.730.296 below averagegood day
Jackson Chourio (LF)MIL4 / 40 / 10 / 00 / 00 / 10 / 10 / 11 / 12 / 1-1.40.339 elitebad day
Rafael Flores Jr. (1B)PIT3 / 40 / 10 / 00 / 00 / 10 / 10 / 11 / 12 / 1-1.40.344 elitebad day
Henry Davis (C)PIT2 / 31 / 10 / 00 / 01 / 02 / 02 / 01 / 01 / 11.260.285 below averagegood day
Luis Lara (CF)MIL4 / 40 / 10 / 10 / 00 / 00 / 10 / 11 / 11 / 1-0.780.3 below averageprojection too high
Brandon Lowe (2B)PIT2 / 41 / 11 / 00 / 00 / 01 / 10 / 11 / 01 / 10.640.323 above averageprojection too low
Sal Frelick (RF)MIL3 / 42 / 10 / 00 / 00 / 01 / 00 / 00 / 00 / 00.470.281 weak—
Nick Gonzales (DH)PIT4 / 40 / 10 / 00 / 00 / 00 / 00 / 00 / 03 / 1-0.470.327 above average—
Gary Sánchez (DH)MIL3 / 31 / 10 / 00 / 00 / 00 / 10 / 00 / 11 / 1-0.330.341 elite—
Joey Ortiz (SS)MIL4 / 41 / 10 / 00 / 00 / 00 / 02 / 01 / 00 / 10.330.3 below average—
Konnor Griffin (SS)PIT4 / 41 / 11 / 10 / 00 / 02 / 11 / 11 / 01 / 10.330.3 below average—
Ronny Simon (RF)PIT3 / 41 / 10 / 00 / 00 / 00 / 02 / 01 / 00 / 10.330.317 average—
Oneil Cruz (CF)PIT5 / 41 / 10 / 00 / 00 / 02 / 11 / 10 / 12 / 2-0.330.355 elite—
Bryan Reynolds (LF)PIT4 / 41 / 11 / 10 / 00 / 00 / 10 / 10 / 10 / 1-0.330.355 elite—
Brice Turang (2B)MIL4 / 41 / 10 / 10 / 00 / 00 / 10 / 11 / 12 / 1-0.310.347 elite—
Andrew Vaughn (1B)MIL4 / 30 / 10 / 00 / 00 / 00 / 10 / 01 / 01 / 1-0.140.334 above average—
David Hamilton (3B)MIL2 / 31 / 10 / 00 / 00 / 01 / 00 / 10 / 00 / 100.272 weak—
Jared Triolo (3B)PIT4 / 31 / 10 / 00 / 00 / 00 / 01 / 00 / 01 / 100.287 below average—
Full model trace, player evidence, and audit findings

Fundamental evidence entering the pick

SignalHome-away edgeMeaning
Season quality-1.17positive favors home; negative favors away
Recent form-1.138positive favors home; negative favors away
Starting-pitcher matchup-0.061positive favors home; negative favors away
Composite-1.423positive favors home; negative favors away

Score and confidence evolution

StageAway-home runsConfidenceWhat changed
historical_ml5.14-4.2n/aBase ML historical model prediction
variance_applied5-4n/aDeterministic baseline target (variance factor 1.0)
enhanced_prediction6-40.56Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail)
embedded_savant_run_environment6-4n/aTarget score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review6-4n/aRefreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target6-4n/aCapped at max 12 realistic runs
simulation_result6-4n/aFinal inning-by-inning simulation result

Official postgame stage attribution

StageBeforeAfterToward final pickWhat changed
variance_applied5.14-4.25-40.061Deterministic baseline target (variance factor 1.0)
enhanced_prediction5-46-41Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail)
embedded_savant_run_environment6-46-4-0Target score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review6-46-4-0Refreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target6-46-4-0Capped at max 12 realistic runs
simulation_result6-46-4-0Final inning-by-inning simulation result

Largest player-level adjustments from the ultra-detailed trace

These are pregame model adjustments, not claims about actual postgame player error.

TeamPlayerRoleNet effectLargest change
PITBrandon Lowebatter / 2Bbetterpredicted_H 2.69
MILJoey Ortizbatter / SSbetterpredicted_AB 1.85
MILSal Frelickbatter / RFbetterpredicted_RBI 1.82
MILBrice Turangbatter / 2Bbetterpredicted_AB -1.82
MILBo Naylorbatter / Cworsepredicted_RBI 1.75
PITOneil Cruzbatter / CFbetterpredicted_SO -1.5
MILJackson Chouriobatter / LFworsepredicted_H -1.36
PITJared Triolobatter / 3Bworsepredicted_SO 1.359

Structural audit findings

SeverityRuleFindingSubject
infoCURRENT_PITCHER_DUPLICATIONMIL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.MIL
infoCURRENT_PITCHER_DUPLICATIONPIT pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.PIT
infoCURRENT_FINALIZED_MATCH_BOXMIL model pitcher projections differ from final simulation pitching box score (H: current=9, sim=10; HR: current=1, sim=2).MIL
infoCURRENT_FINALIZED_MATCH_BOXMIL model-prediction batting totals differ from final simulation box score (AB: current=32, sim=36; H: current=8, sim=10; 2B: current=2, sim=3; HR: current=1, sim=2; RBI: current=5, sim=6; R: current=4, sim=6; BB: current=4, sim=6; SO: current=8, sim=11).MIL
infoCURRENT_PLAYER_MATCH_BOXMIL current finalized hitter lines are model predictions and differ from the simulation box score: Luis Lara: AB current=4 box=5, H current=1 box=2, BB current=1 box=0, SO current=1 box=2; Gary Sánchez: AB current=3 box=4, RBI current=1 box=0, R current=0 box=1, SO current=1 box=2; Joey Ortiz: AB current=4 box=5, H current=1 box=2, R current=0 box=1, SO current=1 box=2; Sal Frelick: HR current=0 box=1, RBI current=0 box=2, R current=0 box=1, SF current=0 box=1; Andrew Vaughn: AB current=3 box=4, H current=1 box=0, RBI current=1 box=0, BB current=0 box=1; Brice Turang: AB current=4 box=3, H current=1 box=2, BB current=1 box=2; Jackson Chourio: AB current=4 box=5, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Bo Naylor: H current=0 box=1, HR current=0 box=1, RBI current=0 box=2, R current=0 box=1MIL
infoCURRENT_FINALIZED_MATCH_BOXPIT model-prediction batting totals differ from final simulation box score (AB: current=34, sim=37; H: current=9, sim=10; 2B: current=2, sim=0; HR: current=1, sim=2; RBI: current=5, sim=4; R: current=5, sim=4; BB: current=3, sim=5; SO: current=10, sim=9).PIT
infoCURRENT_PLAYER_MATCH_BOXPIT current finalized hitter lines are model predictions and differ from the simulation box score: Rafael Flores Jr.: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Konnor Griffin: AB current=4 box=5, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Nick Gonzales: BB current=0 box=1; Ronny Simon: AB current=4 box=3, H current=1 box=0, BB current=0 box=1, SO current=1 box=0; Jared Triolo: BB current=0 box=1, SO current=1 box=2; Oneil Cruz: AB current=4 box=5, H current=1 box=2, HR current=0 box=1, BB current=1 box=0; Bryan Reynolds: 2B current=1 box=0, RBI current=1 box=0; Brandon Lowe: AB current=4 box=5, H current=1 box=4, HR current=0 box=1, RBI current=1 box=2PIT
infoRECONCILIATION_PROPAGATIONNo score_target_reconciliation step was used for this game.

MIN@LAAMISS

Predicted: MIN 4-3 (conf -0.03, toss_up)Actual: LAA 4-5Brier 0.267total bias -2
Root cause: Genuine toss-up that flipped
Evidence-backed diagnosis
Quantified contributing factors

No large single-factor errors.

TeamStarterProjectedActualER err
MINTaj Bradley3 ER / 18 outs3 ER / 21 outs0
LAAWalbert Ureña1 ER / 17 outs0 ER / 21 outs-1
Decision internals: run factors home×0.925 / away×0.959; savant lineup adjustment applied

Player-level breakdown (projected vs actual)

Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.

Top deviations that drove the game:

Pitcher versus batter: what actually broke this game

Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.

AWAY pitching

Taj Bradley (MIN) threw 21 outs, 3 ER = 3.86 ERA against a projected 4.5 ERA (-0.64 ERA error)

Bullpen behind him: 1 ER over 4 outs.

The HOME lineup he faced produced 5 runs on 8 hits and 0 HR, against a projected 4 runs / 7 hits (1 runs vs projection).

Who did the damage to him:

  • Oswald Peraza: 2-for-3, 0 HR, 1 RBI [+0.94 runs vs projection] season xwOBA 0.274, weak - a good day, not a model error
  • Josh Lowe: 1-for-4, 0 HR, 0 RBI [+0.31 runs vs projection] season xwOBA 0.288, below average - a good day, not a model error

Verdict: neither side broke materially - the result is closer to variance

HOME pitching

Walbert Ureña (LAA) threw 21 outs, 0 ER = 0 ERA against a projected 1.59 ERA (-1.59 ERA error)

Bullpen behind him: 2 ER over 5 outs.

The AWAY lineup he faced produced 4 runs on 10 hits and 1 HR, against a projected 4 runs / 7 hits (0 runs vs projection).

Who did the damage to him:

  • Walker Jenkins: 3-for-4, 1 HR, 2 RBI [+2.01 runs vs projection] season xwOBA 0.244, weak - a good day, not a model error
  • Ben Ross: 1-for-4, 0 HR, 0 RBI [+0.78 runs vs projection] season xwOBA 0.16, weak - a good day, not a model error
  • Brooks Lee: 2-for-4, 0 HR, 2 RBI [+0.47 runs vs projection] season xwOBA 0.275, weak - a good day, not a model error

Verdict: neither side broke materially - the result is closer to variance

Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)

PitcherTeamOutsERAERHHRBBexp BBSOexp SOContext (as-of)
MINTaj Bradley (Starter)21 / 183.86 / 4.53 / 35 / 50 / 11 / 12.469 / 67.21venue away: 4.52 vs 3.05 ERA (worse here) · opp run factor 0.92 (weak) · 29 prior appearances this season
MINA.J. Minter (Middle Reliever (High Leverage))2 / 30 / 00 / 01 / 00 / 00 / 00.222 / 11.01
MINJeff Hoffman (Setup Man)1 / 30 / 00 / 00 / 00 / 01 / 00.351 / 01.52
MINYoendrys Gómez (Closer)1 / 327 / 0 (+27.00)1 / 01 / 00 / 01 / 00.570 / 21.04
LAAWalbert Ureña (Starter)21 / 170 / 1.590 / 14 / 30 / 00 / 22.079 / 56.32venue home: 2.42 vs 3.59 ERA (ok) · opp run factor 0.96 (average) · 27 prior appearances this season
LAABen Joyce (Closer)3 / 318 / 182 / 22 / 41 / 00 / 00.663 / 11.17
LAATayler Saucedo (Middle Reliever (High Leverage))2 / 30 / 9 (-9.00)0 / 10 / 10 / 11 / 00.141 / 00.85

Hitters: actual / projected (sorted by run impact vs projection)

BatterTeamABH2B3BHRRBIRBBSORun impactSeason xwOBASignal
Walker Jenkins (CF)MIN4 / 33 / 00 / 00 / 01 / 02 / 02 / 00 / 11 / 12.010.244 weakgood day
Zach Neto (SS)LAA4 / 40 / 10 / 00 / 00 / 10 / 11 / 11 / 13 / 2-1.40.311 averageno signal
Oswald Peraza (2B)LAA3 / 32 / 00 / 00 / 00 / 01 / 00 / 00 / 00 / 10.940.274 weakgood day
Ben Ross (SS)MIN4 / 21 / 01 / 00 / 00 / 00 / 01 / 00 / 02 / 10.780.16 weakgood day
Josh Bell (DH)MIN5 / 41 / 10 / 10 / 00 / 00 / 10 / 10 / 11 / 1-0.640.333 above averagebad day
Kody Clemens (2B)MIN3 / 41 / 10 / 00 / 00 / 10 / 10 / 11 / 01 / 1-0.60.336 above averagebad day
Emmanuel Rodriguez (LF)MIN4 / 40 / 10 / 00 / 00 / 00 / 10 / 00 / 03 / 1-0.470.48 elite—
Brooks Lee (3B)MIN4 / 42 / 10 / 00 / 00 / 02 / 10 / 10 / 00 / 10.470.275 weak—
Royce Lewis (1B)MIN5 / 40 / 10 / 00 / 00 / 00 / 00 / 00 / 04 / 1-0.470.311 average—
Jose Siri (CF)LAA4 / 30 / 10 / 00 / 00 / 00 / 11 / 00 / 03 / 2-0.470.305 average—
Luke Keaschall (RF)MIN5 / 41 / 10 / 00 / 00 / 00 / 00 / 10 / 12 / 0-0.330.319 average—
Josh Lowe (RF)LAA4 / 31 / 11 / 00 / 00 / 00 / 00 / 00 / 02 / 10.310.288 below average—
Wade Meckler (LF)LAA5 / 42 / 10 / 10 / 00 / 01 / 01 / 10 / 11 / 1-0.170.313 average—
Victor Caratini (C)MIN4 / 31 / 10 / 00 / 00 / 00 / 01 / 00 / 01 / 100.315 average—
Mike Trout (DH)LAA4 / 41 / 10 / 00 / 00 / 01 / 01 / 11 / 11 / 100.378 elite—
Moisés Ballesteros (1B)LAA4 / 41 / 10 / 00 / 00 / 01 / 01 / 00 / 01 / 100.3 below average—
Denzer Guzman (3B)LAA4 / 41 / 10 / 00 / 00 / 01 / 10 / 10 / 01 / 100.264 weak—
Tyler Heineman (C)LAA3 / 30 / 00 / 00 / 00 / 00 / 00 / 00 / 02 / 100.24 weak—
Full model trace, player evidence, and audit findings

Fundamental evidence entering the pick

SignalHome-away edgeMeaning
Season quality0.079positive favors home; negative favors away
Recent form0.407positive favors home; negative favors away
Starting-pitcher matchup-0.034positive favors home; negative favors away
Composite-0.11positive favors home; negative favors away

Score and confidence evolution

StageAway-home runsConfidenceWhat changed
historical_ml4.52-3.89n/aBase ML historical model prediction
variance_applied5-4n/aDeterministic baseline target (variance factor 1.0)
enhanced_prediction4-30.516Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail)
embedded_savant_run_environment4-3n/aTarget score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review4-3n/aRefreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target4-3n/aCapped at max 12 realistic runs
simulation_result4-3n/aFinal inning-by-inning simulation result

Official postgame stage attribution

StageBeforeAfterToward final pickWhat changed
variance_applied4.52-3.895-40.369Deterministic baseline target (variance factor 1.0)
enhanced_prediction5-44-3-0Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail)
embedded_savant_run_environment4-34-3-0Target score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review4-34-3-0Refreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target4-34-3-0Capped at max 12 realistic runs
simulation_result4-34-3-0Final inning-by-inning simulation result

Largest player-level adjustments from the ultra-detailed trace

These are pregame model adjustments, not claims about actual postgame player error.

TeamPlayerRoleNet effectLargest change
MINKody Clemensbatter / 2Bworsepredicted_AB -2.58
LAAJose Siribatter / CFbetterpredicted_H 2.425
LAATyler Heinemanbatter / Cworsepredicted_SO 1.565
MINLuke Keaschallbatter / RFbetterpredicted_AB 1.521
MINBen Rossbatter / SSworsepredicted_AB 1.5
LAAMike Troutbatter / DHworsepredicted_SO -1.165
MINRoyce Lewisbatter / 1Bworsepredicted_H 1.14
LAAJosh Lowebatter / RFworsepredicted_SO 1.061

Structural audit findings

SeverityRuleFindingSubject
infoCURRENT_PITCHER_DUPLICATIONLAA pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.LAA
infoCURRENT_PITCHER_DUPLICATIONMIN pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.MIN
infoCURRENT_FINALIZED_MATCH_BOXLAA model-prediction batting totals differ from final simulation box score (AB: current=32, sim=33; H: current=7, sim=6; R: current=4, sim=3; BB: current=3, sim=1; SO: current=11, sim=9; HBP: current=0, sim=2).LAA
infoCURRENT_PLAYER_MATCH_BOXLAA current finalized hitter lines are model predictions and differ from the simulation box score: Mike Trout: H current=1 box=2, BB current=1 box=0, SO current=1 box=0; Wade Meckler: H current=1 box=0, 2B current=1 box=0, R current=1 box=0, BB current=1 box=0; Josh Lowe: H current=1 box=0, SO current=1 box=2, HBP current=0 box=1; Moisés Ballesteros: AB current=4 box=3, H current=1 box=0, BB current=0 box=1; Jose Siri: AB current=3 box=4, H current=1 box=3, HR current=0 box=1, RBI current=1 box=2; Denzer Guzman: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=1 box=2; Tyler Heineman: AB current=3 box=4, SO current=1 box=2; Zach Neto: 2B current=0 box=1, HR current=1 box=0, BB current=1 box=0, SO current=2 box=1LAA
infoCURRENT_FINALIZED_MATCH_BOXMIN model pitcher projections differ from final simulation pitching box score (H: current=5, sim=6).MIN
infoCURRENT_FINALIZED_MATCH_BOXMIN model-prediction batting totals differ from final simulation box score (AB: current=32, sim=35; H: current=7, sim=8; 2B: current=1, sim=2; BB: current=3, sim=2; SO: current=8, sim=6).MIN
infoCURRENT_PLAYER_MATCH_BOXMIN current finalized hitter lines are model predictions and differ from the simulation box score: Luke Keaschall: AB current=4 box=5, H current=1 box=2, 2B current=0 box=1, RBI current=0 box=1; Emmanuel Rodriguez: H current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Kody Clemens: AB current=4 box=2, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Brooks Lee: 2B current=0 box=1, SO current=1 box=0; Josh Bell: 2B current=1 box=0, BB current=1 box=0, SO current=1 box=0; Royce Lewis: H current=1 box=2, SO current=1 box=0; Victor Caratini: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=1, R current=0 box=1; Walker Jenkins: AB current=3 box=4, BB current=1 box=0, SO current=1 box=2MIN
infoRECONCILIATION_PROPAGATIONNo score_target_reconciliation step was used for this game.

OAK@TBHIT

Predicted: TB 4-7 (conf +0.16, moderate)Actual: TB 1-10Brier 0.176total bias +0
Root cause: Right winner, wrong score
Evidence-backed diagnosis
Quantified contributing factors
TeamStarterProjectedActualER err
OAKJeffrey Springs4 ER / 14 outs6 ER / 10 outs2
TBDrew Rasmussen2 ER / 18 outs0 ER / 15 outs-2
Decision internals: run factors home×1.079 / away×1.027; savant lineup adjustment applied

Player-level breakdown (projected vs actual)

Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.

Top deviations that drove the game:

Starter miss: Jeffrey Springs (OAK) posted 16.20 ERA vs projected 7.71 (6 ER in 10 outs); he faced a strong offense (opponent run factor 1.08, bucket average).

What to do: Consider raising context.opponent_strength_weight; validate across the rolling window before promotion.

Pitcher versus batter: what actually broke this game

Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.

AWAY pitching

Jeffrey Springs (OAK) threw 10 outs, 6 ER = 16.2 ERA against a projected 7.71 ERA (8.49 ERA error)

Bullpen behind him: 0 ER over 3 outs.

The HOME lineup he faced produced 9 runs on 7 hits and 0 HR, against a projected 5 runs / 9 hits (4 runs vs projection).

Who did the damage to him:

  • Richie Palacios: 1-for-2, 0 HR, 2 RBI [+0.97 runs vs projection] season xwOBA 0.309, average - a good day, not a model error
  • Liam Hicks: 2-for-4, 0 HR, 2 RBI [+0.8 runs vs projection] season xwOBA 0.316, average - a good day, not a model error
  • Chandler Simpson: 2-for-5, 0 HR, 2 RBI [+0.47 runs vs projection] season xwOBA 0.265, weak - a good day, not a model error

Verdict: both: the starter was hit hard AND the lineup underproduced

HOME pitching

Drew Rasmussen (TB) threw 15 outs, 0 ER = 0 ERA against a projected 3 ERA (-3 ERA error)

Bullpen behind him: 0 ER over 0 outs.

The AWAY lineup he faced produced 1 runs on 5 hits and 1 HR, against a projected 3 runs / 8 hits (-2 runs vs projection).

Who did the damage to him:

  • Lawrence Butler: 2-for-4, 1 HR, 1 RBI [+1.07 runs vs projection] season xwOBA 0.321, above average - real projection error
  • Denzel Clarke: 1-for-2, 0 HR, 0 RBI [+0.8 runs vs projection] season xwOBA 0.202, weak - a good day, not a model error
  • Henry Bolte: 1-for-3, 0 HR, 0 RBI [+0.33 runs vs projection] season xwOBA 0.318, average - a good day, not a model error

Verdict: neither side broke materially - the result is closer to variance

Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)

PitcherTeamOutsERAERHHRBBexp BBSOexp SOContext (as-of)
OAKJeffrey Springs (Starter)10 / 1416.2 / 7.71 (+8.49)6 / 45 / 60 / 12 / 31.854 / 63.59venue away: 4.76 vs 6.94 ERA (ok) · opp run factor 1.08 (average) · 27 prior appearances this season
OAKChris Roycroft (Reliever)3 / 30 / 9 (-9.00)0 / 10 / 20 / 12 / 0n/a2 / 0n/a
TBDrew Rasmussen (Starter)15 / 180 / 3 (-3.00)0 / 24 / 30 / 12 / 10.823 / 84.62venue home: 3.05 vs 2.57 ERA (ok) · opp run factor 1.03 (weak) · 28 prior appearances this season

Hitters: actual / projected (sorted by run impact vs projection)

BatterTeamABH2B3BHRRBIRBBSORun impactSeason xwOBASignal
Lawrence Butler (RF)OAK4 / 42 / 10 / 00 / 01 / 01 / 11 / 10 / 11 / 11.070.321 above averageprojection too low
Junior Caminero (3B)TB3 / 40 / 10 / 00 / 00 / 10 / 11 / 12 / 11 / 1-1.070.363 elitebad day
Richie Palacios (2B)TB2 / 31 / 11 / 00 / 00 / 02 / 01 / 02 / 00 / 10.970.309 averageno signal
Zack Gelof (3B)OAK4 / 41 / 10 / 00 / 00 / 10 / 10 / 10 / 00 / 1-0.930.311 averageno signal
Denzel Clarke (CF)OAK2 / 31 / 00 / 00 / 00 / 00 / 00 / 01 / 01 / 10.80.202 weakgood day
Donovan Walton (2B)OAK3 / 30 / 10 / 00 / 00 / 00 / 00 / 00 / 10 / 1-0.80.332 above averagebad day
Liam Hicks (C)TB4 / 32 / 10 / 00 / 00 / 02 / 11 / 01 / 01 / 00.80.316 averageno signal
Yandy Díaz (DH)TB5 / 40 / 10 / 00 / 00 / 00 / 10 / 10 / 12 / 0-0.80.35 elitebad day
Jeff McNeil (DH)OAK3 / 40 / 10 / 10 / 00 / 00 / 10 / 00 / 01 / 0-0.780.303 below averageprojection too high
Jonny DeLuca (CF)TB3 / 40 / 10 / 10 / 00 / 00 / 01 / 00 / 01 / 1-0.780.266 weakprojection too high
Tommy White (1B)OAK4 / 40 / 10 / 00 / 00 / 00 / 00 / 00 / 01 / 1-0.470.296 below average—
Jonah Heim (C)OAK4 / 30 / 10 / 00 / 00 / 00 / 10 / 00 / 00 / 1-0.470.287 below average—
Chandler Simpson (LF)TB5 / 42 / 10 / 00 / 00 / 02 / 02 / 10 / 00 / 00.470.265 weak—
Alika Williams (SS)OAK3 / 30 / 10 / 10 / 00 / 00 / 00 / 01 / 01 / 1-0.450.243 weak—
Henry Bolte (LF)OAK3 / 41 / 10 / 00 / 00 / 00 / 00 / 11 / 01 / 10.330.318 average—
Taylor Walls (SS)TB3 / 31 / 10 / 00 / 00 / 02 / 01 / 11 / 01 / 10.330.249 weak—
Jonathan Aranda (1B)TB4 / 41 / 11 / 00 / 00 / 01 / 11 / 11 / 12 / 10.310.347 elite—
Ryan Vilade (RF)TB1 / 30 / 10 / 00 / 00 / 00 / 01 / 01 / 01 / 1-0.140.331 above average—
Full model trace, player evidence, and audit findings

Fundamental evidence entering the pick

SignalHome-away edgeMeaning
Season quality1.683positive favors home; negative favors away
Recent form1.202positive favors home; negative favors away
Starting-pitcher matchup0.051positive favors home; negative favors away
Composite1.88positive favors home; negative favors away

Score and confidence evolution

StageAway-home runsConfidenceWhat changed
historical_ml4.02-5.69n/aBase ML historical model prediction
variance_applied4-6n/aDeterministic baseline target (variance factor 1.0)
enhanced_prediction4-70.58Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail)
embedded_savant_run_environment4-7n/aTarget score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review4-7n/aRefreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target4-7n/aCapped at max 12 realistic runs
simulation_result4-7n/aFinal inning-by-inning simulation result

Official postgame stage attribution

StageBeforeAfterToward final pickWhat changed
variance_applied4.02-5.694-60.336Deterministic baseline target (variance factor 1.0)
enhanced_prediction4-64-71Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail)
embedded_savant_run_environment4-74-70Target score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review4-74-70Refreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target4-74-70Capped at max 12 realistic runs
simulation_result4-74-70Final inning-by-inning simulation result

Largest player-level adjustments from the ultra-detailed trace

These are pregame model adjustments, not claims about actual postgame player error.

TeamPlayerRoleNet effectLargest change
OAKJeffrey Springspitcher / Starterworsepredicted_IP -3.8
OAKChris Roycroftpitcher / Relieverworsepredicted_H 2
OAKTommy Whitebatter / 1Bboostedpredicted_RBI 1.8
TBTaylor Wallsbatter / SSbetterpredicted_H 1.42
TBYandy Díazbatter / DHworsepredicted_RBI 1.41
TBLiam Hicksbatter / Cworsepredicted_AB -1.366
TBRyan Viladebatter / RFworsepredicted_AB 1.25
OAKAlika Williamsbatter / SSworsepredicted_AB 1.159

Structural audit findings

SeverityRuleFindingSubject
infoCURRENT_PITCHER_DUPLICATIONOAK pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.OAK
infoCURRENT_PITCHER_DUPLICATIONTB pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.TB
infoCURRENT_FINALIZED_MATCH_BOXOAK model pitcher projections differ from final simulation pitching box score (ER: current=6, sim=7).OAK
infoCURRENT_FINALIZED_MATCH_BOXOAK model-prediction batting totals differ from final simulation box score (AB: current=32, sim=31; H: current=8, sim=5; 2B: current=2, sim=1; HR: current=1, sim=2; R: current=3, sim=4; BB: current=2, sim=3; SO: current=8, sim=10; SF: current=0, sim=1).OAK
infoCURRENT_PLAYER_MATCH_BOXOAK current finalized hitter lines are model predictions and differ from the simulation box score: Jeff McNeil: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, SO current=0 box=1; Henry Bolte: AB current=4 box=3, H current=1 box=0, R current=1 box=0, BB current=0 box=1; Tommy White: HR current=0 box=1, RBI current=0 box=2, R current=0 box=1, SO current=1 box=2; Alika Williams: AB current=3 box=4, 2B current=1 box=0; Zack Gelof: H current=1 box=2, 2B current=0 box=1, HR current=1 box=0, RBI current=1 box=0; Jonah Heim: AB current=3 box=4, HR current=0 box=1, R current=0 box=1, SO current=1 box=0; Donovan Walton: AB current=3 box=2, H current=1 box=0, RBI current=0 box=1, R current=0 box=1; Lawrence Butler: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, R current=1 box=0OAK
infoCURRENT_FINALIZED_MATCH_BOXTB model-prediction batting totals differ from final simulation box score (AB: current=32, sim=35; H: current=9, sim=10; HR: current=1, sim=2; RBI: current=4, sim=7; R: current=5, sim=7; SF: current=0, sim=1; HBP: current=0, sim=1).TB
infoCURRENT_PLAYER_MATCH_BOXTB current finalized hitter lines are model predictions and differ from the simulation box score: Liam Hicks: AB current=3 box=2, H current=1 box=0, R current=0 box=1, BB current=0 box=1; Jonny DeLuca: RBI current=0 box=1, R current=0 box=1, SO current=1 box=0; Jonathan Aranda: AB current=4 box=5, HR current=0 box=1, BB current=1 box=0; Junior Caminero: H current=1 box=2, HR current=1 box=0, RBI current=1 box=0; Yandy Díaz: RBI current=1 box=2, SO current=0 box=2; Ryan Vilade: AB current=3 box=4, H current=1 box=0; Chandler Simpson: H current=1 box=2, RBI current=0 box=1; Richie Palacios: AB current=3 box=4TB
infoRECONCILIATION_PROPAGATIONNo score_target_reconciliation step was used for this game.

PHI@NYMMISS

Predicted: NYM 3-4 (conf +0.09, lean)Actual: PHI 3-0Brier 0.296total bias +4
Root cause: Starting-pitcher projection was wrong
Evidence-backed diagnosis
Quantified contributing factors
TeamStarterProjectedActualER err
PHIAaron Nola4 ER / 18 outs0 ER / 21 outs-4
NYMNolan McLean2 ER / 18 outs1 ER / 18 outs-1
Decision internals: run factors home×0.992 / away×0.925; savant lineup adjustment applied

Player-level breakdown (projected vs actual)

Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.

Top deviations that drove the game:

Starter miss: Aaron Nola (PHI) posted 0.00 ERA vs projected 6.00 (0 ER in 21 outs); no credible venue, opponent-strength or experience signal explains it — an outlier start (variance).

What to do: Variance — no model change is warranted for this start.

Pitcher versus batter: what actually broke this game

Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.

AWAY pitching

Aaron Nola (PHI) threw 21 outs, 0 ER = 0 ERA against a projected 6 ERA (-6 ERA error)

Bullpen behind him: 0 ER over 5 outs.

The HOME lineup he faced produced 0 runs on 3 hits and 0 HR, against a projected 4 runs / 8 hits (-4 runs vs projection).

Who did the damage to him:

  • Brett Baty: 0-for-1, 0 HR, 0 RBI [+0.66 runs vs projection] season xwOBA 0.31, average - a good day, not a model error

Verdict: neither side broke materially - the result is closer to variance

HOME pitching

Nolan McLean (NYM) threw 18 outs, 1 ER = 1.5 ERA against a projected 3 ERA (-1.5 ERA error)

Bullpen behind him: 0 ER over 0 outs.

The AWAY lineup he faced produced 3 runs on 8 hits and 0 HR, against a projected 4 runs / 7 hits (-1 runs vs projection).

Who did the damage to him:

  • Bryce Harper: 3-for-4, 0 HR, 1 RBI [+0.94 runs vs projection] season xwOBA 0.385, elite - real projection error
  • Justin Crawford: 1-for-2, 0 HR, 1 RBI [+0.47 runs vs projection] season xwOBA 0.289, below average - a good day, not a model error
  • Bryson Stott: 2-for-3, 0 HR, 0 RBI [+0.45 runs vs projection] season xwOBA 0.327, above average - a good day, not a model error

Verdict: offense: the lineup scored well below its projection

Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)

PitcherTeamOutsERAERHHRBBexp BBSOexp SOContext (as-of)
PHIAaron Nola (Starter)21 / 180 / 6 (-6.00)0 / 43 / 60 / 13 / 11.864 / 34.88venue away: 4.15 vs 5.3 ERA (ok) · opp run factor 0.99 (average) · 30 prior appearances this season
PHIJhoan Duran (Closer)3 / 30 / 00 / 01 / 00 / 00 / 00.132 / 01.27
PHIJonathan Bowlan (Middle Reliever (High Leverage))2 / 30 / 00 / 00 / 10 / 01 / 10.22 / 01.17
NYMNolan McLean (Starter)18 / 181.5 / 31 / 27 / 40 / 03 / 33.045 / 65.54venue home: 3.57 vs 2.89 ERA (worse here) · opp run factor 0.92 (average) · 29 prior appearances this season

Hitters: actual / projected (sorted by run impact vs projection)

BatterTeamABH2B3BHRRBIRBBSORun impactSeason xwOBASignal
Kyle Schwarber (DH)PHI4 / 40 / 10 / 00 / 00 / 10 / 10 / 11 / 11 / 1-1.40.365 elitebad day
A.J. Ewing (CF)NYM4 / 40 / 10 / 10 / 00 / 00 / 00 / 00 / 12 / 1-1.110.322 above averagebad day
Juan Soto (DH)NYM2 / 40 / 10 / 00 / 00 / 10 / 10 / 12 / 10 / 1-1.070.412 elitebad day
Bryce Harper (RF)PHI4 / 43 / 10 / 00 / 00 / 01 / 10 / 11 / 11 / 10.940.385 eliteprojection too low
Brett Baty (2B)NYM1 / 30 / 00 / 00 / 00 / 00 / 00 / 02 / 01 / 10.660.31 averageno signal
Justin Crawford (CF)PHI2 / 31 / 00 / 00 / 00 / 01 / 00 / 00 / 00 / 10.470.289 below average—
Francisco Lindor (SS)NYM3 / 40 / 10 / 00 / 00 / 00 / 10 / 11 / 10 / 1-0.470.329 above average—
Francisco Alvarez (C)NYM3 / 40 / 10 / 00 / 00 / 00 / 00 / 00 / 01 / 1-0.470.322 above average—
Jared Young (1B)NYM2 / 40 / 10 / 00 / 00 / 00 / 10 / 10 / 00 / 1-0.470.322 above average—
Bryson Stott (3B)PHI3 / 42 / 11 / 00 / 00 / 00 / 11 / 10 / 10 / 10.450.327 above average—
Luis Arraez (2B)PHI2 / 40 / 10 / 00 / 00 / 01 / 00 / 01 / 01 / 0-0.140.306 average—
Trea Turner (SS)PHI3 / 40 / 10 / 10 / 00 / 00 / 01 / 12 / 00 / 1-0.120.291 below average—
Alec Bohm (1B)PHI4 / 41 / 10 / 00 / 00 / 00 / 10 / 00 / 00 / 100.328 above average—
Brandon Marsh (LF)PHI3 / 31 / 10 / 00 / 00 / 00 / 01 / 00 / 01 / 100.302 below average—
Garrett Stubbs (C)PHI4 / 30 / 00 / 00 / 00 / 00 / 00 / 00 / 02 / 100.212 weak—
Carson Benge (RF)NYM4 / 41 / 10 / 00 / 00 / 00 / 00 / 10 / 01 / 100.338 above average—
Nick Morabito (LF)NYM3 / 31 / 10 / 00 / 00 / 00 / 00 / 00 / 01 / 100.324 above average—
Bo Bichette (3B)NYM4 / 41 / 10 / 00 / 00 / 00 / 10 / 00 / 01 / 100.326 above average—
Full model trace, player evidence, and audit findings

Fundamental evidence entering the pick

SignalHome-away edgeMeaning
Season quality-0.312positive favors home; negative favors away
Recent form0.358positive favors home; negative favors away
Starting-pitcher matchup0.068positive favors home; negative favors away
Composite0.246positive favors home; negative favors away

Score and confidence evolution

StageAway-home runsConfidenceWhat changed
historical_ml4.27-4.72n/aBase ML historical model prediction
variance_applied4-5n/aDeterministic baseline target (variance factor 1.0)
enhanced_prediction3-40.544Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail)
embedded_savant_run_environment3-4n/aTarget score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review3-4n/aRefreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target3-4n/aCapped at max 12 realistic runs
simulation_result3-4n/aFinal inning-by-inning simulation result

Official postgame stage attribution

StageBeforeAfterToward final pickWhat changed
variance_applied4.27-4.724-50.554Deterministic baseline target (variance factor 1.0)
enhanced_prediction4-53-40Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail)
embedded_savant_run_environment3-43-40Target score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review3-43-40Refreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target3-43-40Capped at max 12 realistic runs
simulation_result3-43-40Final inning-by-inning simulation result

Largest player-level adjustments from the ultra-detailed trace

These are pregame model adjustments, not claims about actual postgame player error.

TeamPlayerRoleNet effectLargest change
PHITrea Turnerbatter / SSworsepredicted_AB -2.94
NYMJared Youngbatter / 1Bbetterpredicted_2B 1.823
PHIKyle Schwarberbatter / DHworsepredicted_AB -1.69
NYMFrancisco Alvarezbatter / Cbetterpredicted_RBI 1.59
PHIBryson Stottbatter / 3Bworsepredicted_RBI 1.562
PHIGarrett Stubbsbatter / Cworsepredicted_SO 1.368
PHILuis Arraezbatter / 2Bworsepredicted_H -1.31
PHIBrandon Marshbatter / LFworsepredicted_SO 1.085

Structural audit findings

SeverityRuleFindingSubject
infoCURRENT_PITCHER_DUPLICATIONNYM pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.NYM
infoCURRENT_PITCHER_DUPLICATIONPHI pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.PHI
infoCURRENT_FINALIZED_MATCH_BOXNYM model-prediction batting totals differ from final simulation box score (AB: current=34, sim=32; 2B: current=1, sim=4; SO: current=9, sim=3).NYM
infoCURRENT_PLAYER_MATCH_BOXNYM current finalized hitter lines are model predictions and differ from the simulation box score: Juan Soto: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Carson Benge: H current=1 box=0, R current=1 box=0, SO current=1 box=0; A.J. Ewing: AB current=4 box=3, H current=1 box=2, 2B current=1 box=0, R current=0 box=1; Francisco Lindor: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Brett Baty: AB current=3 box=4, H current=0 box=1, 2B current=0 box=1, RBI current=0 box=1; Nick Morabito: AB current=3 box=2, 2B current=0 box=1, RBI current=0 box=1, R current=0 box=1; Francisco Alvarez: HR current=0 box=1, RBI current=0 box=2, R current=0 box=1, SO current=1 box=0; Jared Young: H current=1 box=2, 2B current=0 box=2, RBI current=1 box=0, R current=1 box=0NYM
infoCURRENT_FINALIZED_MATCH_BOXPHI model pitcher projections differ from final simulation pitching box score (H: current=7, sim=8; BB: current=2, sim=3).PHI
infoCURRENT_FINALIZED_MATCH_BOXPHI model-prediction batting totals differ from final simulation box score (AB: current=33, sim=31; H: current=7, sim=4; 3B: current=0, sim=1; HR: current=1, sim=0; RBI: current=4, sim=3; R: current=4, sim=3; BB: current=3, sim=5; SO: current=8, sim=9).PHI
infoCURRENT_PLAYER_MATCH_BOXPHI current finalized hitter lines are model predictions and differ from the simulation box score: Bryce Harper: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Alec Bohm: H current=1 box=2, R current=0 box=1; Bryson Stott: 3B current=0 box=1, RBI current=1 box=2, BB current=1 box=0, SO current=1 box=2; Luis Arraez: AB current=4 box=3, H current=1 box=0, BB current=0 box=1, SO current=0 box=1; Justin Crawford: BB current=0 box=1; Brandon Marsh: AB current=3 box=4, H current=1 box=0, SO current=1 box=2; Trea Turner: AB current=4 box=2, H current=1 box=0, 2B current=1 box=0, R current=1 box=0; Kyle Schwarber: AB current=4 box=3, 2B current=0 box=1, HR current=1 box=0, RBI current=1 box=0PHI
infoRECONCILIATION_PROPAGATIONNo score_target_reconciliation step was used for this game.

SD@COLHIT

Predicted: SD 8-5 (conf -0.08, lean)Actual: SD 9-2Brier 0.212total bias +2
Root cause: Solid correct call
Evidence-backed diagnosis
Quantified contributing factors
TeamStarterProjectedActualER err
SDMichael King3 ER / 19 outs2 ER / 18 outs-1
COLTanner Gordon6 ER / 15 outs7 ER / 9 outs1
Decision internals: run factors home×1.006 / away×1.07; savant lineup adjustment applied

Player-level breakdown (projected vs actual)

Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.

Top deviations that drove the game:

Starter miss: Tanner Gordon (COL) posted 21.00 ERA vs projected 10.80 (7 ER in 9 outs); he is materially worse pitching home (8.04 ERA there vs 3.00 on the other side), a venue-role weakness the model under-weighted.

What to do: Enable/raise the venue-split weight (context.venue_adjustment_weight) and validate in shadow; the split is credible for this starter.

Pitcher versus batter: what actually broke this game

Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.

AWAY pitching

Michael King (SD) threw 18 outs, 2 ER = 3 ERA against a projected 4.26 ERA (-1.26 ERA error)

Bullpen behind him: 0 ER over 0 outs.

The HOME lineup he faced produced 2 runs on 9 hits and 0 HR, against a projected 4 runs / 9 hits (-2 runs vs projection).

Who did the damage to him:

  • Brett Sullivan: 2-for-4, 0 HR, 0 RBI [+0.47 runs vs projection] season xwOBA 0.283, weak - a good day, not a model error
  • Jake McCarthy: 1-for-3, 0 HR, 0 RBI [+0.31 runs vs projection] season xwOBA 0.326, above average - a good day, not a model error

Verdict: neither side broke materially - the result is closer to variance

HOME pitching

Tanner Gordon (COL) threw 9 outs, 7 ER = 21 ERA against a projected 10.8 ERA (10.2 ERA error)

Bullpen behind him: 0 ER over 9 outs.

The AWAY lineup he faced produced 9 runs on 15 hits and 1 HR, against a projected 5 runs / 10 hits (4 runs vs projection).

Who did the damage to him:

  • Xander Bogaerts: 3-for-5, 1 HR, 2 RBI [+2.47 runs vs projection] season xwOBA 0.32, average - a good day, not a model error
  • Samad Taylor: 2-for-4, 0 HR, 1 RBI [+1.11 runs vs projection] season xwOBA 0.307, average - a good day, not a model error
  • Jake Cronenworth: 2-for-5, 0 HR, 0 RBI [+1.09 runs vs projection] season xwOBA 0.269, weak - a good day, not a model error

Verdict: both: the starter was hit hard AND the lineup underproduced

Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)

PitcherTeamOutsERAERHHRBBexp BBSOexp SOContext (as-of)
SDMichael King (Starter)18 / 193 / 4.262 / 37 / 60 / 02 / 12.126 / 64.75venue away: 3.34 vs 2.74 ERA (worse here) · opp run factor 1.01 (average) · 30 prior appearances this season
COLTanner Gordon (Starter)9 / 1521 / 10.8 (+10.20)7 / 610 / 51 / 22 / 10.993 / 53.52venue home: 8.04 vs 3 ERA (worse here) · opp run factor 1.07 (average) · 22 prior appearances this season
COLBrennan Bernardino (Setup Man)3 / 30 / 9 (-9.00)0 / 10 / 10 / 00 / 20.172 / 20.65
COLJaden Hill (Middle Reliever (High Leverage))3 / 30 / 00 / 00 / 10 / 00 / 00.620 / 20.99
COLJordan Romano (Closer)3 / 30 / 00 / 00 / 00 / 01 / 00.542 / 21.06

Hitters: actual / projected (sorted by run impact vs projection)

BatterTeamABH2B3BHRRBIRBBSORun impactSeason xwOBASignal
Xander Bogaerts (SS)SD5 / 33 / 11 / 01 / 01 / 02 / 01 / 10 / 12 / 02.470.32 averageno signal
Manny Machado (3B)SD3 / 40 / 10 / 00 / 00 / 11 / 10 / 10 / 10 / 1-1.730.334 above averagebad day
Samad Taylor (LF)SD4 / 32 / 11 / 00 / 00 / 01 / 02 / 11 / 01 / 11.110.307 averageno signal
Jake Cronenworth (2B)SD5 / 42 / 10 / 01 / 00 / 00 / 02 / 00 / 00 / 11.090.269 weakgood day
Dustin Harris (CF)SD5 / 43 / 10 / 00 / 00 / 03 / 11 / 00 / 01 / 00.940.336 above averageprojection too low
Ty France (1B)SD4 / 43 / 11 / 10 / 00 / 00 / 11 / 00 / 00 / 10.940.333 above averageprojection too low
Jackson Merrill (DH)SD4 / 41 / 10 / 01 / 00 / 02 / 11 / 10 / 01 / 10.620.349 eliteprojection too low
Luis Campusano (C)SD4 / 30 / 10 / 00 / 00 / 00 / 00 / 00 / 02 / 1-0.470.333 above average—
Troy Johnston (DH)COL4 / 30 / 10 / 00 / 00 / 00 / 00 / 00 / 01 / 1-0.470.325 above average—
Zac Veen (RF)COL4 / 30 / 10 / 00 / 00 / 00 / 00 / 00 / 03 / 1-0.470.297 below average—
Brett Sullivan (C)COL4 / 32 / 10 / 00 / 00 / 00 / 10 / 00 / 00 / 00.470.283 weak—
Connor Norby (2B)COL4 / 41 / 10 / 00 / 00 / 01 / 00 / 00 / 11 / 1-0.330.307 average—
Kyle Karros (3B)COL4 / 41 / 10 / 00 / 00 / 01 / 00 / 10 / 11 / 1-0.330.342 elite—
Jake McCarthy (CF)COL3 / 41 / 10 / 11 / 00 / 00 / 11 / 10 / 00 / 10.310.326 above average—
Cole Carrigg (SS)COL4 / 41 / 10 / 10 / 00 / 00 / 11 / 10 / 01 / 1-0.310.313 average—
Fernando Tatis Jr. (RF)SD4 / 41 / 21 / 10 / 00 / 00 / 11 / 11 / 01 / 1-0.140.376 elite—
Mickey Moniak (LF)COL3 / 42 / 10 / 00 / 00 / 10 / 10 / 11 / 00 / 1-0.130.28 weak—
TJ Rumfield (1B)COL2 / 41 / 10 / 00 / 00 / 00 / 10 / 01 / 11 / 000.336 above average—
Full model trace, player evidence, and audit findings

Fundamental evidence entering the pick

SignalHome-away edgeMeaning
Season quality-1.504positive favors home; negative favors away
Recent form-1.654positive favors home; negative favors away
Starting-pitcher matchup-0.064positive favors home; negative favors away
Composite-1.922positive favors home; negative favors away

Score and confidence evolution

StageAway-home runsConfidenceWhat changed
historical_ml5.53-3.88n/aBase ML historical model prediction
variance_applied6-4n/aDeterministic baseline target (variance factor 1.0)
enhanced_prediction8-50.54Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail)
embedded_savant_run_environment8-5n/aTarget score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review8-5n/aRefreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target8-5n/aCapped at max 12 realistic runs
simulation_result8-5n/aFinal inning-by-inning simulation result

Official postgame stage attribution

StageBeforeAfterToward final pickWhat changed
variance_applied5.53-3.886-40.351Deterministic baseline target (variance factor 1.0)
enhanced_prediction6-48-51Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail)
embedded_savant_run_environment8-58-5-0Target score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review8-58-5-0Refreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target8-58-5-0Capped at max 12 realistic runs
simulation_result8-58-5-0Final inning-by-inning simulation result

Largest player-level adjustments from the ultra-detailed trace

These are pregame model adjustments, not claims about actual postgame player error.

TeamPlayerRoleNet effectLargest change
SDJackson Merrillbatter / DHbetterpredicted_RBI 4.439
COLZac Veenbatter / RFbetterpredicted_RBI 3.423
SDDustin Harrisbatter / CFbetterpredicted_SO 2.567
SDFernando Tatis Jr.batter / RFbetterpredicted_SO 2.176
SDXander Bogaertsbatter / SSworsepredicted_SO 1.29
COLKyle Karrosbatter / 3Bworsepredicted_SO 1.271
COLMickey Moniakbatter / LFworsepredicted_H 1.16
COLJake McCarthybatter / CFworsepredicted_AB 1.122

Structural audit findings

SeverityRuleFindingSubject
infoCURRENT_PITCHER_DUPLICATIONCOL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.COL
infoCURRENT_PITCHER_DUPLICATIONSD pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.SD
infoCURRENT_FINALIZED_MATCH_BOXCOL model pitcher projections differ from final simulation pitching box score (H: current=8, sim=11; ER: current=7, sim=8; HR: current=2, sim=3).COL
infoCURRENT_FINALIZED_MATCH_BOXCOL model-prediction batting totals differ from final simulation box score (AB: current=33, sim=36; 2B: current=2, sim=3; R: current=4, sim=5; BB: current=3, sim=1).COL
infoCURRENT_PLAYER_MATCH_BOXCOL current finalized hitter lines are model predictions and differ from the simulation box score: Jake McCarthy: AB current=4 box=5, 2B current=1 box=0; Cole Carrigg: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Connor Norby: R current=0 box=1, BB current=1 box=0; Troy Johnston: AB current=3 box=4, 2B current=0 box=1, SO current=1 box=0; Kyle Karros: H current=1 box=0, R current=1 box=0, BB current=1 box=0, SO current=1 box=2; TJ Rumfield: 2B current=0 box=1, RBI current=1 box=0, BB current=1 box=0; Mickey Moniak: H current=1 box=2, HR current=1 box=0, RBI current=1 box=0; Zac Veen: AB current=3 box=4, H current=1 box=2, 2B current=0 box=1, HR current=0 box=1COL
infoCURRENT_FINALIZED_MATCH_BOXSD model-prediction batting totals differ from final simulation box score (AB: current=33, sim=38; H: current=10, sim=11; 2B: current=2, sim=1; HR: current=1, sim=3; RBI: current=5, sim=8; R: current=5, sim=8; BB: current=2, sim=3; SO: current=7, sim=12).SD
infoCURRENT_PLAYER_MATCH_BOXSD current finalized hitter lines are model predictions and differ from the simulation box score: Dustin Harris: AB current=4 box=5, 2B current=0 box=1, RBI current=1 box=0, R current=0 box=1; Jackson Merrill: H current=1 box=2, HR current=0 box=2, RBI current=1 box=5, BB current=0 box=1; Xander Bogaerts: AB current=3 box=4, H current=1 box=0, BB current=1 box=0, SO current=0 box=2; Fernando Tatis Jr.: AB current=4 box=5, 2B current=1 box=0, HR current=0 box=1, RBI current=1 box=2; Manny Machado: AB current=4 box=5, H current=1 box=2, HR current=1 box=0, RBI current=1 box=0; Ty France: H current=1 box=2, 2B current=1 box=0, R current=0 box=1, BB current=0 box=1; Luis Campusano: R current=0 box=1, BB current=0 box=1; Jake Cronenworth: R current=0 box=1SD
infoRECONCILIATION_PROPAGATIONNo score_target_reconciliation step was used for this game.

Cross-game lever tension

Each candidate fix, and exactly which games it would help versus hurt. A lever that repairs one game and breaks two is visible here before it is proposed.

score.variance_multiplier / score.variance_floor (widen run distributions)

Targets: brier_score, calibration_error · 2 helped vs 0 hurt
Would help
  • BOS@TEX (miss): lost a 0.11-confidence pick; wider tails lower overconfidence
  • MIL@PIT (miss): lost a 0.12-confidence pick; wider tails lower overconfidence
Would hurt / risk
  • none

player.pitcher.v4 form weights / player.pitcher_prior_games

Targets: starter_er_mae, starter_outs_mae · 4 helped vs 4 hurt
Would help
  • DET@CHW (miss): starter ER off by 4
  • KC@HOU (hit): starter ER off by 3
  • LAD@CIN (hit): starter ER off by 3
  • PHI@NYM (miss): starter ER off by 4
Would hurt / risk
  • BOS@TEX (miss): starter projection was accurate (ER off 1); reweight risks disturbing it
  • MIL@PIT (miss): starter projection was accurate (ER off 1); reweight risks disturbing it
  • MIN@LAA (miss): starter projection was accurate (ER off 1); reweight risks disturbing it
  • SD@COL (hit): starter projection was accurate (ER off 1); reweight risks disturbing it

recent.* / season.* run-mean weighting

Targets: team_run_mae, total_run_mae, accuracy · 6 helped vs 2 hurt
Would help
  • DET@CHW (miss): team runs off by 5
  • LAD@CIN (hit): team runs off by 4
  • MIL@PIT (miss): team runs off by 5
  • OAK@TB (hit): team runs off by 6
  • PHI@NYM (miss): team runs off by 4
  • SD@COL (hit): team runs off by 4
Would hurt / risk
  • BOS@TEX (miss): team runs already close (off 2); reweight risks disturbing it
  • MIN@LAA (miss): team runs already close (off 2); reweight risks disturbing it

Day over day: did it improve or worsen

Compared against packet 20260916. Last recorded change: v4.30.0 (2026-09-08) Hitter shrinkage is derived from the between-hitter spread rather than fitted to slate error, so an established extreme profile is no longer flattened toward the league.

MetricPriorCurrentΔResult
brier_score0.23910.2425+0.003405regressed
accuracy0.61670.5917-0.025regressed
team_run_mae2.54582.5333-0.0125improved
total_run_mae3.6253.5333-0.0917improved
calibration_error0.0850.0728-0.0122improved
starter_er_mae1.73331.7326-0.0007improved
starter_outs_mae3.22923.2984+0.0692regressed

The adjustment the system made in response

Status: applied to production · APPLIED TO PRODUCTION. The champion changed from candidate-57e651c7f36832cf to candidate-f4c3ec3952acc919 at 2026-09-18T09:05:40.012512+00:00. These values are now live. The previous champion is retained and the rollback monitor is armed: the next settled slates measure whether this improved or worsened predictions, and it reverts automatically on a measured regression.
Hypothesis: Increasing score variance modestly from 1.95 to 2.05 may further reduce persistent margin compression and improve run-model error, supported by the regressing margin bias, the run-model loss incidence, and prior variance increases that worked. The shadow gate should detect any degradation in Brier score or calibration.
ParameterChangeExpected effectRiskEvidence
score.variance_multiplier1.95 → 2.05total_run_mae decreaselow riskmetric.total_run_mae, pipeline.largest_team_run_regression, errors.miss_reasons

Luna deep post-mortem (full)

1. Evidence receipt and gaps

Sources received

All seven source_manifest entries were checked against the supplied evidence:

SourceStatusPurpose
prediction_review_20260917.json — 229,581 bytesLoadedOfficial outcomes and scoring errors
PREDICTION_SYSTEM_DEEP_AUDIT_20260917.json — 150,866 bytesLoadedProbability, provenance, starter, and decision contracts
continuous_learning_daily_20260917.json — 1,555,702 bytesLoadedPipeline stages, calibration, lineage, score distribution, starter comparisons
detailed_20260917.html — 214,325 bytesLoadedFull game and simulation rendering
20260917_ultra_detailed_player_audit.html — 20,306,685 bytesLoadedPlayer-level prediction trace
audit_report_20260917.html — 1,143,113 bytesLoadedStructural and invariant findings
audit_report_20260917_integrity_revision.htmlMissingPost-Luna remediation proof for immutable revision artifacts

The missing integrity-revision audit is an evidence gap. It does not invalidate the settled-game results, because the structural audits, prediction artifacts, and game-level audit receipts are present, but it prevents independent confirmation of post-remediation immutable-revision status.

Slate coverage

All nine expected games were reviewed:

Coverage was complete:

All nine game-level structural audits reported zero critical findings, zero errors, and zero warnings. They reported 70 informational findings in aggregate.

Internal contradictions and evidence limitations

  1. BOS@TEX probability-lineage wording is internally awkward.

The row says published_minus_calibrated = -0.009473, the transformation says “no recorded transformation explains the publication delta,” but unexplained_material_delta is false. The delta is small and not material, so this is not a material bypass, but the wording should be normalized.

  1. The missing integrity-revision artifact remains unresolved.

It is the only missing manifest entry.

  1. Published probability and confidence edge use different representations.

For example, LAD@CIN has a governed/calibrated probability of 0.7106, but its published away-side probability is 0.56 and its displayed home-minus-away edge is -0.12. This is explainable by the named score-coherence and recency transformations, but reports should make the selected side and side-relative probability explicit.

  1. The pipeline-stage table contains a meaningful winner-direction regression that is not obvious from aggregate final accuracy.

BOS@TEX moves historical ML TEX → TIE, then enhanced prediction moves TIE → TEX. The later recovery does not erase the intermediate regression.

  1. No market cross-check was available.

There were zero source-labelled moneyline covers, so market agreement/disagreement cannot be evaluated.

  1. Player-level results are noisy.

Only 13 of 53 material player deviations were supported by the hitter’s own season contact quality, a learnable share of 24.5%. The other deviations should not be treated as feature evidence.

---

2. Executive diagnosis

Overall result

This was not a good prediction slate merely because four winners were correct. Winner accuracy was below the stated walk-forward baseline and below coin-flip performance on this slate. Exact-score performance was substantially weaker than winner performance.

Separate diagnoses

Winner accuracy

Poor on this slate:

The five misses were BOS@TEX, DET@CHW, MIL@PIT, MIN@LAA, and PHI@NYM.

Calibration quality

Calibration was weak and overconfident:

The model did reduce high raw probabilities through score coherence and matchup-recency guardrails. That is good lineage behavior, but the residual published confidence still overstated reliability in the moderate and lean buckets.

Score accuracy

Score accuracy was materially weak:

The system systematically compressed the margin distribution, particularly in OAK@TB and SD@COL.

Starter accuracy

Starter performance was mixed and often decisive:

Venue-split evidence was specifically credible for several blown starters, especially Seth Lugo, Kyle Harrison, and Tanner Gordon. This supports a bounded shadow test of context.venue_adjustment_weight, but not an unvalidated production change.

Artifact integrity

Artifact integrity was strong for the settled game artifacts:

However, the missing integrity-revision audit prevents a fully closed artifact-revision receipt.

Causal issue register reconciliation

weak_run_model_signal — High

This is a material model-validation risk, not a contract failure. The appropriate action is an isolated feature/target backtest, not a nightly score tweak.

complete_slate_audit_coverage — Info

Correctly classified as informational.

probability_publication_delta_explained — Info

This is supported. BOS@TEX has a small wording inconsistency but no material unexplained delta.

simulation_inert_on_slate — Info for this slate, escalated persistent failure across slates

Cross-slate evidence changes the operational diagnosis: this has persisted for 11 consecutive slates and is now an established code/diagnostic failure pattern.

---

3. Every game

The game records use confidence_home_minus_away; negative values indicate an away-side edge. The published pick probability below is the probability of the selected side.

BOS@TEX — miss; correct-winner/wrong-score: no

DET@CHW — miss; correct-winner/wrong-score: no

KC@HOU — hit; correct-winner/wrong-score: yes

LAD@CIN — hit; correct-winner/wrong-score: yes

MIL@PIT — miss; correct-winner/wrong-score: no

MIN@LAA — miss; correct-winner/wrong-score: no

OAK@TB — hit; correct-winner/wrong-score: yes

PHI@NYM — miss; correct-winner/wrong-score: no

SD@COL — hit; correct-winner/wrong-score: yes

Game-level summary

Correct winners:

Correct winner but wrong score:

Misses:

There were no exact-score hits reported.

---

4. Miss reconstruction

Earliest wrong-direction stages

BOS@TEX
DET@CHW
MIL@PIT
MIN@LAA
PHI@NYM

Loss-cause classification

Across five losses:

A 0.12 confidence edge is moderate. It should not be described as a near coin flip, but neither should it be treated as high-confidence certainty. The appropriate response is calibration and distribution control, not removal of all directional signal.

Pipeline-stage quality across all stages

StageWinner accuracyTeam-run MAETotal-run MAEMargin MAE
historical_ml4/9 = 44.44%2.08632.17383.5824
variance_applied4/92.05562.11113.6667
enhanced_prediction4/91.88892.00003.5556
embedded_savant_run_environment4/91.94442.11113.4444
fundamental_edge_target_review4/91.94442.11113.4444
capped_target4/91.94442.11113.4444
simulation_result4/91.94442.11113.4444
published_final4/91.94442.11113.4444

Transitions:

  1. Historical ML → variance applied:
  1. Variance applied → enhanced prediction:
  1. Enhanced → embedded Savant:
  1. Embedded Savant → fundamental review:
  1. Fundamental review → capped:
  1. Capped → simulation:
  1. Simulation → published final:

The system’s later stages improved run-error metrics relative to historical ML, but none improved winner accuracy, and simulation made no measurable winner-direction intervention.

---

5. Cross-game counterfactuals

Lever tension: widen run distributions

Lever: score.variance_multiplier / score.variance_floor

Targets: Brier score, calibration error

Helps
Hurts
Net evidence

Lever tension: pitcher form weights / prior games

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

Targets: starter ER MAE, starter outs MAE

Helps
Hurts
Net evidence

Lever tension: recent/season run-mean weighting

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

Targets: team-run MAE, total-run MAE, accuracy

Helps
Hurts
Net evidence

Tempting fixes that should not be made

---

6. Data and contract defects

Critical findings

No critical audit findings were reported in the nine game audits or the structural audit summary.

The missing integrity-revision artifact is a manifest gap, but it was not reported as a critical settled-game contract failure.

Error findings

No error audit findings were reported.

Warning findings

No warning audit findings were reported.

Informational findings

The aggregate structural audit reported 70 informational findings. The principal informational findings were:

Model defects versus artifact bugs

Prediction-model defects
  1. Weak run-model signal — high severity
  1. Simulation inertness — persistent code/diagnostic defect
  1. Margin compression
  1. Calibration overconfidence
  1. Player projection separation
Presentation/artifact defects
  1. BOS@TEX lineage wording says no transformation explains a delta while marking it non-material and not unexplained. This should be clarified.
  2. The missing integrity-revision audit is a presentation/receipt gap unless independently shown to reflect an actual missing immutable-revision check.
  3. Probability layers should consistently identify:

Coverage reconciliation

The coverage matrix is clean for the nine settled games:

The slate should not be called fully artifact-clean because the integrity-revision audit is missing, but it is structurally complete and learning-eligible.

Probability-lineage audit

Materially relevant rows:

These six material movements have recorded explanations; no material governor bypass is established.

BOS@TEX moved from calibrated 0.5633 to published 0.553827, a delta of only -0.009473. The row’s wording is inconsistent, but this is not a material unexplained delta.

MIN@LAA and PHI@NYM had small deltas and named recency/score-coherence handling.

No probability reversion or overwritten side was identified.

---

7. Cross-slate persistence

A single slate is not enough to establish most model patterns, but several findings have already escalated and must be treated as established failures.

Escalated findings

simulation_inert_on_slate

The self-assessment gives the concrete suspected defect: separate target-realization search from independent win-probability simulation; prevent early exit; use a registered batch size such as 200–500 draws or an independent closed-form distribution.

weak_run_model_signal

This is an established failure, not single-slate noise.

Non-escalated finding streaks

FindingConsecutive countPresent nowInterpretation
high_raw_probability_cluster0NoOccurred once in the 11-slate window; this slate had two high-raw games, but the registered streak is not current
pipeline_winner_instability0NoIncidence 2 in window, but no current streak
score_margin_compression0NoIncidence 1 in window under this finding label; current margin compression is visible but not escalated under this streak record
simulation_inert_on_slate11YesEstablished persistent failure
single_slate_calibration_instability0NoSeven occurrences in window but no consecutive current streak
weak_run_model_signal11YesEstablished persistent failure

Metric trends

Each direction is explicit:

“Improving” calibration and loss-run error do not mean they are good; they mean the recent series is moving in a favorable direction. Current calibration remains materially imperfect.

Top-confidence-pick loss streak

Other structural persistence

---

8. Adjustments for today

Recommendations are ranked by persistence, scope, expected metric impact, affected games, and regression risk.

1. Repair and independently measure simulation — highest evidence strength

2. Run an isolated run-model feature/target backtest — persistent high-severity issue

3. Bounded confidence-cap reduction for the strongest single-slate driver

4. Optional shadow test of run-mean weighting

Changes to abstain from today

---

9. Bottom line

Known

Uncertain

Single safest next action

Repair and instrument the simulation probability path before changing model parameters: separate independent win-probability draws from target-realization search, remove early exit, register the batch size, and run it in shadow with rollback monitoring. This directly addresses an 11-slate established failure, preserves the existing forecast path, and produces the most valuable evidence for the next slate without overfitting today’s nine games.