Which reports actually fed the diagnosis. A source shown as missing was not silently assumed.
| Source | Status | Evidence supplied | Path | Bytes |
|---|---|---|---|---|
| prediction review | loaded | official outcomes and scoring errors | /app/output/reports/prediction_review_20260909.json | 376114 |
| forensic deep audit | loaded | probability, provenance, starter and decision contracts | /app/output/reports/PREDICTION_SYSTEM_DEEP_AUDIT_20260909.json | 241363 |
| continuous learning | loaded | pipeline-stage quality, calibration, probability lineage, score distribution, and official starter comparisons | /app/output/learning/continuous_learning_daily_20260909.json | 2537069 |
| detailed report | loaded | full game and simulation rendering | /app/output/reports/detailed_20260909.html | 353038 |
| ultra detailed player audit | loaded | player-level prediction trace | /app/output/reports/20260909_ultra_detailed_player_audit.html | 32410370 |
| structural audit | loaded | all invariant findings | /app/output/reports/audit_report_20260909.html | 1865922 |
| integrity revision audit | missing | post-Luna remediation proof for immutable revision artifacts | /app/output/reports/audit_report_20260909_integrity_revision.html | n/a |
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).
| Severity | Domain | Finding and evidence | Affected | Action & guardrail |
|---|---|---|---|---|
| CRITICAL | artifact_integrity | Critical canonical artifact integrity failure structural audit totals: {'critical': 1, 'error': 0, 'warning': 0, 'info': 114} | 20260909_WAS@SD | Do thisExclude this slate from parameter learning until the artifact-generation step that wrote the broken file is fixed. Don't concludeA malformed artifact is a file bug, not proof the prediction model was wrong; do not blame accuracy changes on it. |
| CRITICAL | probability_lineage | Published probability differs materially without a recorded transformation 2 game(s) have an unexplained ≥2pp calibrated-to-published delta | PIT@CHW, TB@ATL | Do thisBlock any promotion until the missing probability transformation is recorded and reconciled. Don't concludeDo not assume the probability governor was bypassed until you have traced the pick-side math. |
| HIGH | model_validation | Validated run models explain very little holdout variance home/away/total R² = 0.0118/0.0210/0.0207 | ARI@KC, CHC@MIL, CIN@LAD, CLE@BAL, COL@NYY, HOU@PHI, LAA@BOS, MIN@DET, NYM@MIA, PIT@CHW, STL@SF, TB@ATL, TEX@SEA, TOR@OAK, WAS@SD | 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. |
| INFO | coverage | Every settled game received structural QA 15/15 games structurally audited | ARI@KC, CHC@MIL, CIN@LAD, CLE@BAL, COL@NYY, HOU@PHI, LAA@BOS, MIN@DET, NYM@MIA, PIT@CHW, STL@SF, TB@ATL, TEX@SEA, TOR@OAK, WAS@SD | 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. |
| INFO | simulation | Simulation produced no winner-direction intervention on this slate flip candidates 0; published flips 0 | ARI@KC, CHC@MIL, CIN@LAD, CLE@BAL, COL@NYY, HOU@PHI, LAA@BOS, MIN@DET, NYM@MIA, PIT@CHW, STL@SF, TB@ATL, TEX@SEA, TOR@OAK, WAS@SD | 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. |
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.
| Finding | Persistence | Target lever(s) | Direction | Guardrail |
|---|---|---|---|---|
| simulation_inert_on_slate | 11 consecutive · 11 in window | simulation.allow_score | confirm the simulation module is running, not silently no-oping | simulation_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_signal | 11 consecutive · 11 in window | training.xgb.n_estimators, training.xgb.max_depth, training.xgb.learning_rate | investigate 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 | Consecutive slates | Incidence | Present now | Fix type |
|---|---|---|---|---|
| high_raw_probability_cluster | 0 | 3/11 | no | param |
| pipeline_winner_instability | 0 | 4/11 | no | code/diagnostic |
| score_margin_compression | 0 | 3/11 | no | param |
| simulation_inert_on_slate | 11 | 11/11 | yes | code/diagnostic |
| single_slate_calibration_instability | 0 | 5/11 | no | param |
| weak_run_model_signal | 11 | 11/11 | yes | code/diagnostic |
| Metric | Direction | Series (old → new) |
|---|---|---|
| winner_accuracy | improving | [0.5, 0.6667, 0.4667, 0.3333, 0.5556, 0.625, 0.5333, 0.6, 0.5455, 0.7333, 0.6667] |
| weighted_calibration_error | improving | [0.0693, 0.1661, 0.2476, 0.21, 0.1474, 0.1316, 0.1, 0.0937, 0.2611, 0.1825, 0.1069] |
| margin_bias | regressing | [-2.786, -3.5, -2.533, -3.067, -1.778, -0.688, -1.467, -1.467, -0.182, -0.867, -2.133] |
| team_run_error_on_losses | improving | [7.0, 8.25, 7.125, 6.4, 6.75, 6.0, 5.286, 5.333, 3.8, 6.75, 5.6] |
Every stored stage is scored against the same official finals. A later recovery remains visible; it does not erase an unstable intermediate flip.
| Stage | Winner hits | Accuracy | Team-run MAE | Total-run MAE | Margin MAE |
|---|---|---|---|---|---|
| historical_ml | 10/15 | 66.7% | 3.101 | 4.83 | 3.185 |
| variance_applied | 9/15 | 60% | 3.133 | 4.8 | 3.2 |
| enhanced_prediction | 10/15 | 66.7% | 3.267 | 5.2 | 3.333 |
| embedded_savant_run_environment | 10/15 | 66.7% | 3.267 | 5.2 | 3.2 |
| fundamental_edge_target_review | 10/15 | 66.7% | 3.267 | 5.2 | 3.2 |
| capped_target | 10/15 | 66.7% | 3.267 | 5.2 | 3.2 |
| simulation_result | 10/15 | 66.7% | 3.267 | 5.2 | 3.2 |
| published_final | 10/15 | 66.7% | 3.267 | 5.2 | 3.2 |
| Transition | Δ accuracy | Δ hits | Δ team-run MAE | Δ margin MAE | Games whose winner/tie changed |
|---|---|---|---|---|---|
| historical_ml → variance_applied | -0.0667 | -1 | 0.0324 | 0.0153 | CLE@BAL: CLE → TIE; NYM@MIA: MIA → TIE; TEX@SEA: SEA → TIE; TOR@OAK: TOR → TIE |
| variance_applied → enhanced_prediction | 0.0667 | 1 | 0.1334 | 0.1333 | CLE@BAL: TIE → CLE; NYM@MIA: TIE → NYM; TEX@SEA: TIE → TEX; TOR@OAK: TIE → TOR |
| enhanced_prediction → embedded_savant_run_environment | 0 | 0 | 0 | -0.1333 | |
| embedded_savant_run_environment → fundamental_edge_target_review | 0 | 0 | 0 | 0 | |
| fundamental_edge_target_review → capped_target | 0 | 0 | 0 | 0 | |
| capped_target → simulation_result | 0 | 0 | 0 | 0 | |
| simulation_result → published_final | 0 | 0 | 0 | 0 |
All columns are pick-side probabilities, so away favorites are not accidentally compared using home-side semantics.
| Game | Outcome | Raw model | Calibrated | Governor | Score coherence | Published | Explanation |
|---|---|---|---|---|---|---|---|
| ARI@KC | hit | 0.5823 | 0.5474 | 0.5474 | 0.5474 | 0.53 | score coherence followed by matchup-recency guardrail |
| CHC@MIL | hit | 0.5411 | 0.5339 | 0.5339 | 0.5339 | 0.5245 | score coherence followed by matchup-recency guardrail |
| CIN@LAD | hit | 0.691 | 0.6629 | 0.6629 | 0.6617 | 0.58 | score coherence followed by matchup-recency guardrail |
| CLE@BAL | miss | 0.5282 | 0.5802 | 0.5802 | 0.5802 | 0.558 | score coherence followed by matchup-recency guardrail |
| COL@NYY | hit | 0.7754 | 0.7839 | 0.7839 | 0.7839 | 0.7839 | published probability matches the calibrated/governed value |
| HOU@PHI | hit | 0.5438 | 0.5273 | 0.5273 | 0.5273 | 0.5197 | score coherence followed by matchup-recency guardrail |
| LAA@BOS | miss | 0.5671 | 0.5397 | 0.5397 | 0.5397 | 0.5287 | score coherence followed by matchup-recency guardrail |
| MIN@DET | hit | 0.5546 | 0.5331 | 0.5331 | 0.5331 | 0.5239 | score coherence followed by matchup-recency guardrail |
| NYM@MIA | hit | 0.5464 | 0.6118 | 0.6118 | 0.6118 | 0.5416 | score coherence followed by matchup-recency guardrail |
| PIT@CHW | hit | 0.6887 | 0.6496 | 0.6496 | 0.6158 | 0.5984 | no recorded transformation explains the publication delta |
| STL@SF | miss | 0.5472 | 0.5291 | 0.5291 | 0.5291 | 0.521 | score coherence followed by matchup-recency guardrail |
| TB@ATL | hit | 0.6188 | 0.5996 | 0.5996 | 0.5908 | 0.5772 | no recorded transformation explains the publication delta |
| TEX@SEA | miss | 0.5169 | 0.6398 | 0.6398 | 0.6398 | 0.5487 | score coherence followed by matchup-recency guardrail |
| TOR@OAK | miss | 0.5523 | 0.55 | 0.55 | 0.55 | 0.5362 | score coherence followed by matchup-recency guardrail |
| WAS@SD | hit | 0.5641 | 0.5546 | 0.5546 | 0.5546 | 0.5245 | score coherence followed by matchup-recency guardrail |
One blown start is noise. The same failure repeating across the slate is a model problem. These are the repeats.
| Sides analyzed | Broke on pitching | Broke on offense | Both | Variance | Mean starter ERA error | Mean lineup runs vs proj |
|---|---|---|---|---|---|---|
| 30 | 8 | 7 | 4 | 11 | 3.36 | 1.07 |
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 15 games with an applied blend, the blend's side and the published side agree.
Blend side survived on 15 of 15 games; the blend flagged a winner change on 0.
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.12 over 10 slates (sign shared by 0.50 of them, z = 0.47).
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 10 slates share the sign, mean 0.12 +/- 0.26 standard error: not separable from noise
lineup runs actual minus projected
Mean -0.11 over 10 slates (sign shared by 0.70 of them, z = -0.66).
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
7 of 10 slates share the sign, mean -0.11 +/- 0.16 standard error: not separable from noise
| Slate | Games | Winner acc | Mean starter ERA error | Mean lineup runs vs proj | Sides broke on pitching | Sides broke on offense |
|---|---|---|---|---|---|---|
| 20260908 | 15 | 0.733 | -0.15 | -0.23 | 7 | 15 |
| 20260907 | 11 | 0.545 | -0.86 | -0.36 | 5 | 4 |
| 20260906 | 15 | 0.600 | 0.74 | -0.30 | 6 | 10 |
| 20260905 | 15 | 0.533 | -1.17 | -0.07 | 2 | 6 |
| 20260904 | 16 | 0.625 | -0.23 | -0.44 | 5 | 12 |
| 20260903 | 9 | 0.556 | 0.24 | -0.83 | 4 | 6 |
| 20260902 | 15 | 0.333 | 0.72 | 0.30 | 7 | 6 |
| 20260901 | 15 | 0.467 | 1.48 | 1.07 | 9 | 3 |
| 20260831 | 12 | 0.667 | 0.83 | 0.08 | 2 | 7 |
| 20260830 | 14 | 0.500 | -0.36 | -0.29 | 3 | 7 |
| 20260829 | 17 | 0.941 | — | — | ||
| 20260828 | 15 | 0.467 | — | — |
Narrow predicted margins next to wide actual margins is the signature the score-variance tail is too tight.
| Game | Pred margin | Actual margin | Pred − actual |
|---|---|---|---|
| ARI@KC | 2 | 3 | -1 |
| CHC@MIL | 1 | 2 | -1 |
| CIN@LAD | 3 | 13 | -10 |
| CLE@BAL | 1 | 4 | -3 |
| COL@NYY | 5 | 5 | 0 |
| HOU@PHI | 1 | 4 | -3 |
| LAA@BOS | 1 | 2 | -1 |
| MIN@DET | 1 | 5 | -4 |
| NYM@MIA | 3 | 1 | 2 |
| PIT@CHW | 1 | 2 | -1 |
| STL@SF | 1 | 1 | 0 |
| TB@ATL | 1 | 5 | -4 |
| TEX@SEA | 2 | 1 | 1 |
| TOR@OAK | 1 | 2 | -1 |
| WAS@SD | 1 | 7 | -6 |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| ARI | Zac Gallen | 3 ER / 15 outs | 1 ER / 10 outs | -2 |
| KC | Daniel Lynch IV | 1 ER / 15 outs | 2 ER / 15 outs | 1 |
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
No settled pitching line for this club. The forecast named Zac Gallen (ARI) at a projected 5.4 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 HOME lineup he faced produced 5 runs on 7 hits and 2 HR, against a projected 4 runs / 9 hits (1 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Daniel Lynch IV (KC) threw 15 outs, 2 ER = 3.6 ERA against a projected 1.8 ERA (1.8 ERA error)
Bullpen behind him: 0 ER over 6 outs.
The AWAY lineup he faced produced 0 runs on 0 hits and 0 HR, against a projected 0 runs / 0 hits (0 runs vs projection).
No individual hitter beat his projection by a meaningful margin.
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.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| KC | Daniel Lynch IV (Starter) | 15 / 15 | 3.6 / 1.8 | 2 / 1 | 4 / 4 | 1 / 1 | 2 / 1 | 1.44 | 3 / 7 | 1.82 | venue home: 6.6 vs 7.94 ERA (ok) · opp run factor 0.99 (average) · 52 prior appearances this season |
| KC | Nate Pearson (Setup Man) | 3 / 4 | 0 / 6.75 (-6.75) | 0 / 1 | 1 / 2 | 0 / 0 | 1 / 1 | 0.51 | 1 / 0 | 1.17 | |
| KC | Craig Kimbrel (Middle Reliever (High Leverage)) | 3 / 5 | 0 / 5.4 (-5.40) | 0 / 1 | 2 / 3 | 0 / 1 | 0 / 0 | 0.46 | 1 / 0 | 0.8 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Bobby Witt Jr. (SS) | KC | 4 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 3 / 0 | 1 / 1 | 0 / 1 | 0 / 0 | 0.76 | 0.385 elite | projection too low |
| Vinnie Pasquantino (1B) | KC | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 0 | -0.47 | 0.329 above average | — |
| Salvador Perez (DH) | KC | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.31 average | — |
| Nick Loftin (3B) | KC | 2 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 0 | -0.45 | 0.294 below average | — |
| Carter Jensen (C) | KC | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 2 / 1 | 1 / 1 | 0 / 1 | 0 | 0.306 average | — |
| Michael Massey (2B) | KC | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.305 average | — |
| John Rave (RF) | KC | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 1 / 1 | 0 | 0.313 average | — |
| Kyle Isbel (CF) | KC | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.26 weak | — |
| Isaac Collins (LF) | KC | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0 | 0.295 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.64 | positive favors home; negative favors away |
| Recent form | -0.73 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.014 | positive favors home; negative favors away |
| Composite | -0.205 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.99-5.91 | n/a | Base ML historical model prediction |
| variance_applied | 4-6 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-6 | 0.53 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-7 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-7 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-7 | n/a | Capped at max 12 realistic runs |
| simulation_result | 5-7 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 3.99-5.91 | 4-6 | 0.085 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-6 | 5-6 | -1 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-6 | 5-7 | 1 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-7 | 5-7 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-7 | 5-7 | 0 | Capped at max 12 realistic runs |
| simulation_result | 5-7 | 5-7 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| KC | Carter Jensen | batter / C | worse | predicted_RBI 3.28 |
| ARI | Jordan Lawlar | batter / CF | better | predicted_RBI 1.87 |
| KC | Kyle Isbel | batter / CF | better | predicted_RBI 1.77 |
| ARI | Lourdes Gurriel Jr. | batter / LF | worse | predicted_H 1.53 |
| ARI | Ildemaro Vargas | batter / 2B | worse | predicted_AB 1.463 |
| ARI | Geraldo Perdomo | batter / SS | worse | predicted_BB 1.404 |
| KC | Vinnie Pasquantino | batter / 1B | worse | predicted_SO 1.357 |
| ARI | Nolan Arenado | batter / 3B | better | predicted_SO 1.206 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | ARI pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | ARI |
| info | CURRENT_PITCHER_DUPLICATION | KC pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | KC |
| info | CURRENT_FINALIZED_MATCH_BOX | ARI model pitcher projections differ from final simulation pitching box score (ER: current=6, sim=7). | ARI |
| info | CURRENT_FINALIZED_MATCH_BOX | ARI model-prediction batting totals differ from final simulation box score (AB: current=33, sim=38; H: current=8, sim=11; 2B: current=2, sim=0; HR: current=1, sim=3; R: current=4, sim=5; BB: current=3, sim=2; SO: current=6, sim=8). | ARI |
| info | CURRENT_PLAYER_MATCH_BOX | ARI current finalized hitter lines are model predictions and differ from the simulation box score: Ildemaro Vargas: AB current=4 box=5, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Ketel Marte: AB current=4 box=5, H current=1 box=2, 2B current=1 box=0, RBI current=1 box=0; Lourdes Gurriel Jr.: H current=1 box=2; Geraldo Perdomo: AB current=4 box=3, H current=1 box=2, R current=0 box=1, BB current=1 box=2; Lars Nootbaar: AB current=3 box=4, H current=0 box=1, HR current=0 box=1, RBI current=0 box=1; Nolan Arenado: AB current=4 box=5, BB current=1 box=0, SO current=1 box=2; James McCann: AB current=3 box=4, H current=1 box=0, RBI current=1 box=0, SO current=1 box=2; Jordan Lawlar: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=2, R current=0 box=1 | ARI |
| info | CURRENT_FINALIZED_MATCH_BOX | KC model-prediction batting totals differ from final simulation box score (AB: current=33, sim=37; H: current=9, sim=10; 3B: current=0, sim=1; RBI: current=4, sim=7; R: current=4, sim=7; BB: current=3, sim=1; SO: current=6, sim=11). | KC |
| info | CURRENT_PLAYER_MATCH_BOX | KC current finalized hitter lines are model predictions and differ from the simulation box score: Vinnie Pasquantino: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Salvador Perez: 2B current=0 box=1, RBI current=1 box=0, R current=0 box=1, SO current=1 box=2; Bobby Witt Jr.: AB current=4 box=5, H current=1 box=2, 2B current=1 box=0, BB current=1 box=0; Carter Jensen: AB current=4 box=5, H current=1 box=2, HR current=1 box=0, RBI current=1 box=4; Michael Massey: H current=1 box=2, 2B current=0 box=1, R current=0 box=1; John Rave: AB current=3 box=4, H current=1 box=0, R current=1 box=0, SO current=1 box=0; Kyle Isbel: AB current=3 box=4, H current=1 box=2, 3B current=0 box=1, HR current=0 box=1; Nick Loftin: 2B current=1 box=0, R current=0 box=1, SO current=0 box=1 | KC |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| CHC | Kevin Gausman | 5 ER / 17 outs | 6 ER / 12 outs | 1 |
| MIL | Logan Henderson | 3 ER / 19 outs | 0 ER / 15 outs | -3 |
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: Kevin Gausman (CHC) posted 13.50 ERA vs projected 7.94 (6 ER in 12 outs); he is materially worse pitching away (4.95 ERA there vs 3.91 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
Kevin Gausman (CHC) threw 12 outs, 6 ER = 13.5 ERA against a projected 7.94 ERA (5.56 ERA error)
Bullpen behind him: 0 ER over 3 outs.
The HOME lineup he faced produced 8 runs on 9 hits and 3 HR, against a projected 5 runs / 8 hits (3 runs vs projection).
Who did the damage to him:
Verdict: pitching: the starter gave up runs at a far worse rate than projected
HOME pitching
Logan Henderson (MIL) threw 15 outs, 0 ER = 0 ERA against a projected 4.26 ERA (-4.26 ERA error)
Bullpen behind him: 1 ER over 2 outs.
The AWAY lineup he faced produced 6 runs on 5 hits and 0 HR, against a projected 5 runs / 7 hits (1 runs vs projection).
Who did the damage to him:
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.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| CHC | Kevin Gausman (Starter) | 12 / 17 | 13.5 / 7.94 (+5.56) | 6 / 5 | 8 / 7 | 3 / 0 | 2 / 4 | 1.75 | 6 / 5 | 6 | venue away: 4.95 vs 3.91 ERA (worse here) · opp run factor 1.1 (strong) · 29 prior appearances this season |
| CHC | Trent Thornton (Setup Man) | 3 / 3 | 0 / 9 (-9.00) | 0 / 1 | 0 / 2 | 0 / 0 | 0 / 1 | 0.48 | 2 / 2 | 0.66 | |
| MIL | Logan Henderson (Starter) | 15 / 19 | 0 / 4.26 (-4.26) | 0 / 3 | 2 / 7 | 0 / 1 | 1 / 4 | 0.94 | 6 / 4 | 5.88 | venue home: 2.08 vs 2.84 ERA (ok) · opp run factor 0.96 (strong) · 15 prior appearances this season |
| MIL | Abner Uribe (Setup Man) | 2 / 3 | 13.5 / 0 (+13.50) | 1 / 0 | 2 / 0 | 0 / 0 | 0 / 0 | 0.4 | 1 / 0 | 0.92 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| William Contreras (C) | MIL | 3 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 3 / 1 | 2 / 1 | 1 / 0 | 1 / 1 | 1.73 | 0.331 above average | projection too low |
| Jackson Chourio (LF) | MIL | 5 / 4 | 3 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 2 / 1 | 1 / 1 | 0 / 0 | 1 / 1 | 0.94 | 0.336 above average | projection too low |
| Pete Crow-Armstrong (CF) | CHC | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 2 / 1 | 1 / 1 | 1 / 1 | -0.93 | 0.372 elite | bad day |
| Garrett Mitchell (CF) | MIL | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 2 / 1 | -0.8 | 0.351 elite | bad day |
| Seiya Suzuki (RF) | CHC | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 1 / 1 | -0.78 | 0.34 elite | bad day |
| Michael Busch (1B) | CHC | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | -0.78 | 0.329 above average | bad day |
| Michael Conforto (LF) | CHC | 3 / 3 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.78 | 0.338 above average | projection too low |
| Brice Turang (2B) | MIL | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 3 / 1 | 1 / 1 | 0 / 1 | -0.78 | 0.338 above average | bad day |
| Alex Bregman (3B) | CHC | 3 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 0 | 1 / 1 | 0.64 | 0.318 average | no signal |
| Christian Yelich (DH) | MIL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 3 / 0 | 1 / 1 | 0 / 1 | 3 / 1 | 0.6 | 0.316 average | no signal |
| Pedro Ramirez (2B) | CHC | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.293 below average | — |
| Ian Happ (DH) | CHC | 3 / 4 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 0 | 2 / 2 | 0.33 | 0.313 average | — |
| Nico Hoerner (SS) | CHC | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0 | 0.323 above average | — |
| Carson Kelly (C) | CHC | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | 0 | 0.31 average | — |
| Andrew Vaughn (1B) | MIL | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.335 above average | — |
| Joey Ortiz (3B) | MIL | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.295 below average | — |
| Sal Frelick (RF) | MIL | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.283 weak | — |
| Cooper Pratt (SS) | MIL | 4 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.309 average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.228 | positive favors home; negative favors away |
| Recent form | 0.182 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.136 | positive favors home; negative favors away |
| Composite | 0.649 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.19-5.01 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-6 | 0.524 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-6 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-6 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-6 | n/a | Capped at max 12 realistic runs |
| simulation_result | 5-6 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.19-5.01 | 4-5 | 0.183 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 5-6 | 0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-6 | 5-6 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-6 | 5-6 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-6 | 5-6 | 0 | Capped at max 12 realistic runs |
| simulation_result | 5-6 | 5-6 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| CHC | Pete Crow-Armstrong | batter / CF | better | predicted_AB -2.88 |
| MIL | Sal Frelick | batter / RF | deboosted | predicted_BB 2.737 |
| MIL | Andrew Vaughn | batter / 1B | worse | predicted_H 2.29 |
| MIL | Jackson Chourio | batter / LF | worse | predicted_H -1.72 |
| CHC | Pedro Ramirez | batter / 2B | deboosted | predicted_H 1.6 |
| CHC | Michael Conforto | batter / LF | worse | predicted_AB 1.5 |
| CHC | Ian Happ | batter / DH | worse | predicted_AB 1.375 |
| MIL | Christian Yelich | batter / DH | worse | predicted_AB 1.248 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | CHC pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | CHC |
| info | CURRENT_PITCHER_DUPLICATION | MIL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | MIL |
| info | CURRENT_FINALIZED_MATCH_BOX | CHC model pitcher projections differ from final simulation pitching box score (H: current=10, sim=12). | CHC |
| info | CURRENT_FINALIZED_MATCH_BOX | CHC model-prediction batting totals differ from final simulation box score (AB: current=35, sim=36; H: current=7, sim=9; 2B: current=2, sim=0; RBI: current=4, sim=5; BB: current=3, sim=5; SO: current=10, sim=4). | CHC |
| info | CURRENT_PLAYER_MATCH_BOX | CHC current finalized hitter lines are model predictions and differ from the simulation box score: Seiya Suzuki: AB current=4 box=5, H current=1 box=2, 2B current=1 box=0, RBI current=1 box=0; Ian Happ: AB current=4 box=5, R current=1 box=0, SO current=2 box=0; Nico Hoerner: AB current=4 box=3, R current=0 box=1, BB current=0 box=1, SO current=1 box=0; Michael Busch: AB current=4 box=5, 2B current=1 box=0, BB current=1 box=0; Michael Conforto: AB current=3 box=4, SO current=1 box=2; Alex Bregman: BB current=0 box=1, SO current=1 box=0; Pete Crow-Armstrong: AB current=4 box=3, H current=1 box=2, RBI current=1 box=3, BB current=1 box=2; Pedro Ramirez: AB current=4 box=3, H current=1 box=2, RBI current=0 box=1, R current=0 box=1 | CHC |
| info | CURRENT_FINALIZED_MATCH_BOX | MIL model-prediction batting totals differ from final simulation box score (AB: current=31, sim=37; H: current=8, sim=12; 2B: current=1, sim=3; 3B: current=0, sim=1; HR: current=1, sim=0; RBI: current=4, sim=6; R: current=5, sim=6; BB: current=3, sim=5). | MIL |
| info | CURRENT_PLAYER_MATCH_BOX | MIL current finalized hitter lines are model predictions and differ from the simulation box score: Andrew Vaughn: AB current=3 box=5, H current=1 box=3, 3B current=0 box=1, RBI current=1 box=0; Jackson Chourio: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Brice Turang: H current=1 box=2, RBI current=1 box=2, SO current=1 box=0; Joey Ortiz: AB current=3 box=4, H current=1 box=2, 2B current=0 box=1, RBI current=0 box=1; William Contreras: AB current=4 box=5, SO current=1 box=0; Garrett Mitchell: AB current=3 box=4, 2B current=0 box=1, R current=1 box=0, BB current=1 box=0; Christian Yelich: AB current=4 box=5, R current=1 box=0, BB current=1 box=0, SO current=1 box=2; Sal Frelick: AB current=3 box=2, RBI current=0 box=1, R current=0 box=1, BB current=0 box=3 | MIL |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| CIN | Rhett Lowder | 4 ER / 14 outs | 7 ER / 10 outs | 3 |
| LAD | Yoshinobu Yamamoto | 1 ER / 19 outs | 1 ER / 21 outs | 0 |
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: Rhett Lowder (CIN) posted 18.90 ERA vs projected 7.71 (7 ER in 10 outs); he is materially worse pitching away (6.79 ERA there vs 4.29 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
Rhett Lowder (CIN) threw 10 outs, 7 ER = 18.9 ERA against a projected 7.71 ERA (11.19 ERA error)
Bullpen behind him: 2 ER over 2 outs.
The HOME lineup he faced produced 14 runs on 13 hits and 4 HR, against a projected 4 runs / 8 hits (10 runs vs projection).
Who did the damage to him:
Verdict: both: the starter was hit hard AND the lineup underproduced
HOME pitching
Yoshinobu Yamamoto (LAD) threw 21 outs, 1 ER = 1.29 ERA against a projected 1.42 ERA (-0.13 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 4 runs / 6 hits (-3 runs vs projection).
Who did the damage to him:
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.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| CIN | Rhett Lowder (Starter) | 10 / 14 | 18.9 / 7.71 (+11.19) | 7 / 4 | 7 / 6 | 1 / 2 | 2 / 2 | 1.94 | 4 / 3 | 3.8 | venue away: 6.79 vs 4.29 ERA (worse here) · opp run factor 1.1 (strong) · 25 prior appearances this season |
| CIN | Luis Mey (Setup Man) | 2 / 6 | 27 / 13.5 (+13.50) | 2 / 3 | 2 / 2 | 0 / 1 | 1 / 2 | 0.64 | 2 / 2 | 1.42 | |
| LAD | Yoshinobu Yamamoto (Starter) | 21 / 19 | 1.29 / 1.42 | 1 / 1 | 3 / 3 | 1 / 0 | 1 / 0 | 1.68 | 10 / 7 | 7.39 | venue home: 3.28 vs 1.94 ERA (worse here) · opp run factor 1 (weak) · 25 prior appearances this season |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Enrique Hernández (1B) | LAD | 4 / 3 | 2 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 4 / 0 | 2 / 0 | 0 / 0 | 1 / 1 | 2.18 | 0.26 weak | good day |
| Mookie Betts (SS) | LAD | 5 / 4 | 3 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | 3 / 1 | 0 / 0 | 1 / 0 | 1.87 | 0.331 above average | projection too low |
| Kyle Tucker (RF) | LAD | 5 / 4 | 3 / 1 | 1 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 2 / 1 | 0 / 1 | 1 / 0 | 1.85 | 0.324 above average | projection too low |
| Alex Freeland (2B) | LAD | 3 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 2 / 0 | 1 / 1 | 0.97 | 0.283 weak | good day |
| Sal Stewart (1B) | CIN | 3 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -0.79 | 0.35 elite | bad day |
| JJ Bleday (DH) | CIN | 2 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 2 / 1 | -0.47 | 0.343 elite | — |
| Héctor Rodríguez (RF) | CIN | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -0.47 | 0.277 weak | — |
| Juan Brito (2B) | CIN | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | -0.47 | 0.277 weak | — |
| Will Banfield (C) | CIN | 3 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0.07 weak | — |
| Carlos Jorge (CF) | CIN | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | -0.47 | 0.26 weak | — |
| Ke'Bryan Hayes (3B) | CIN | 3 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0.47 | 0.305 average | — |
| Teoscar Hernández (LF) | LAD | 3 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 1 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0.332 above average | — |
| Tommy Edman (CF) | LAD | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 0 | 1 / 1 | -0.45 | 0.314 average | — |
| Max Muncy (3B) | LAD | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 2 / 1 | 1 / 1 | 0 / 1 | 3 / 1 | -0.33 | 0.35 elite | — |
| Will Smith (DH) | LAD | 3 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 1 / 1 | 0 / 1 | 0.31 | 0.379 elite | — |
| Elly De La Cruz (SS) | CIN | 3 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | 0.29 | 0.371 elite | — |
| Hunter Feduccia (C) | LAD | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 1 | -0.14 | 0.316 average | — |
| TJ Friedl (LF) | CIN | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 | 0.248 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 1.46 | positive favors home; negative favors away |
| Recent form | 0.762 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.102 | positive favors home; negative favors away |
| Composite | 1.757 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.76-6.09 | n/a | Base ML historical model prediction |
| variance_applied | 4-6 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-7 | 0.58 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-8 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-8 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-8 | n/a | Capped at max 12 realistic runs |
| simulation_result | 5-8 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 3.76-6.09 | 4-6 | -0.329 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-6 | 5-7 | 0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-7 | 5-8 | 1 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-8 | 5-8 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-8 | 5-8 | 0 | Capped at max 12 realistic runs |
| simulation_result | 5-8 | 5-8 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| CIN | JJ Bleday | batter / DH | better | predicted_H 2.212 |
| LAD | Teoscar Hernández | batter / LF | better | predicted_RBI 2.16 |
| CIN | Sal Stewart | batter / 1B | worse | predicted_SO 2.085 |
| CIN | Will Banfield | batter / C | better | predicted_RBI 1.91 |
| LAD | Will Smith | batter / DH | better | predicted_RBI 1.526 |
| LAD | Tommy Edman | batter / CF | better | predicted_RBI 1.5 |
| LAD | Enrique Hernández | batter / 1B | boosted | predicted_AB 1.5 |
| LAD | Hunter Feduccia | batter / C | worse | predicted_AB 1.481 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | CIN pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | CIN |
| info | CURRENT_PITCHER_DUPLICATION | LAD pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | LAD |
| info | CURRENT_FINALIZED_MATCH_BOX | CIN model pitcher projections differ from final simulation pitching box score (ER: current=7, sim=8). | CIN |
| info | CURRENT_FINALIZED_MATCH_BOX | CIN model-prediction batting totals differ from final simulation box score (AB: current=32, sim=34; H: current=6, sim=8; 2B: current=1, sim=4; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=0; SO: current=9, sim=11; SF: current=0, sim=1). | CIN |
| info | CURRENT_PLAYER_MATCH_BOX | CIN current finalized hitter lines are model predictions and differ from the simulation box score: JJ Bleday: H current=1 box=3, 2B current=0 box=2, HR current=0 box=1, RBI current=1 box=2; Héctor Rodríguez: RBI current=1 box=0, SO current=1 box=2; Juan Brito: 2B current=0 box=1, R current=1 box=0; Will Banfield: H current=0 box=1, 2B current=0 box=1, RBI current=0 box=2, R current=0 box=1; TJ Friedl: AB current=3 box=4, H current=0 box=1, RBI current=0 box=1, R current=0 box=1; Sal Stewart: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Carlos Jorge: AB current=3 box=4, H current=1 box=0; Elly De La Cruz: 2B current=1 box=0, RBI current=1 box=0, BB current=1 box=0 | CIN |
| info | CURRENT_FINALIZED_MATCH_BOX | LAD model-prediction batting totals differ from final simulation box score (AB: current=33, sim=32; 2B: current=1, sim=0; 3B: current=0, sim=1; HR: current=1, sim=3; RBI: current=4, sim=8; R: current=4, sim=8; BB: current=3, sim=4). | LAD |
| info | CURRENT_PLAYER_MATCH_BOX | LAD current finalized hitter lines are model predictions and differ from the simulation box score: Will Smith: HR current=0 box=1, RBI current=0 box=2, R current=0 box=1, BB current=1 box=0; Tommy Edman: 2B current=1 box=0, 3B current=0 box=1, RBI current=1 box=2, SO current=1 box=0; Max Muncy: AB current=4 box=3, SO current=1 box=0; Teoscar Hernández: AB current=4 box=3, HR current=0 box=1, RBI current=1 box=3, R current=0 box=1; Mookie Betts: H current=1 box=2, RBI current=1 box=0; Enrique Hernández: AB current=3 box=4, H current=0 box=1, R current=0 box=1; Kyle Tucker: AB current=4 box=3, H current=1 box=0, SO current=0 box=2; Hunter Feduccia: AB current=3 box=4, H current=1 box=0 | LAD |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| CLE | Foster Griffin | 3 ER / 17 outs | 8 ER / 7 outs | 5 |
| BAL | Shane Baz | 1 ER / 17 outs | 5 ER / 17 outs | 4 |
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: Foster Griffin (CLE) posted 30.86 ERA vs projected 4.76 (8 ER in 7 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
Foster Griffin (CLE) threw 7 outs, 8 ER = 30.86 ERA against a projected 4.76 ERA (26.1 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 8 runs on 8 hits and 1 HR, against a projected 2 runs / 7 hits (6 runs vs projection).
Who did the damage to him:
Verdict: pitching: the starter gave up runs at a far worse rate than projected
HOME pitching
Shane Baz (BAL) threw 17 outs, 5 ER = 7.94 ERA against a projected 1.59 ERA (6.35 ERA error)
Bullpen behind him: 0 ER over 10 outs.
The AWAY lineup he faced produced 5 runs on 9 hits and 2 HR, against a projected 5 runs / 8 hits (0 runs vs projection).
Who did the damage to him:
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.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| CLE | Foster Griffin (Starter) | 7 / 17 | 30.86 / 4.76 (+26.10) | 8 / 3 | 7 / 6 | 0 / 1 | 2 / 2 | 1.77 | 4 / 5 | 3.69 | venue away: 3.14 vs 3.28 ERA (ok) · opp run factor 0.98 (average) · 28 prior appearances this season |
| BAL | Shane Baz (Starter) | 17 / 17 | 7.94 / 1.59 (+6.35) | 5 / 1 | 6 / 4 | 2 / 1 | 1 / 4 | 2.08 | 5 / 2 | 6.18 | venue home: 3.63 vs 4.18 ERA (ok) · opp run factor 1.06 (weak) · 28 prior appearances this season |
| BAL | Josh Walker (Middle Reliever (High Leverage)) | 4 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0.37 | 0 / 1 | 1.34 | |
| BAL | Rico Garcia (Setup Man) | 5 / 2 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 0 | 0 / 0 | 0.2 | 3 / 1 | 0.81 | |
| BAL | Yennier Cano (Middle Reliever (High Leverage)) | 1 / 2 | 0 / 40.5 (-40.50) | 0 / 3 | 1 / 1 | 0 / 1 | 1 / 1 | 0.11 | 0 / 0 | 0.76 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Coby Mayo (DH) | BAL | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 2 / 1 | 1 / 0 | 1 / 1 | 1.26 | 0.322 above average | projection too low |
| Carlos Narváez (C) | BAL | 4 / 3 | 2 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 0.94 | 0.265 weak | good day |
| Patrick Bailey (C) | CLE | 3 / 3 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0.78 | 0.309 average | no signal |
| José Ramírez (3B) | CLE | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 1 | -0.78 | 0.332 above average | bad day |
| Christian Encarnacion-Strand (3B) | BAL | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 0 | 0 / 0 | 2 / 1 | -0.78 | 0.349 elite | bad day |
| Chase DeLauter (RF) | CLE | 5 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 2 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | 0.76 | 0.343 elite | projection too low |
| Pete Alonso (1B) | BAL | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 2 / 1 | 2 / 1 | -0.6 | 0.394 elite | bad day |
| Angel Genao (2B) | CLE | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 1 | 0.47 | 0.281 weak | — |
| Brayan Rocchio (SS) | CLE | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | -0.47 | 0.294 below average | — |
| Rece Hinds (LF) | BAL | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.184 weak | — |
| Jackson Holliday (2B) | BAL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 0 | 0 / 1 | 0 / 2 | -0.33 | 0.302 below average | — |
| Steven Kwan (CF) | CLE | 5 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 1 / 0 | 0.14 | 0.321 above average | — |
| Travis Bazzana (DH) | CLE | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 1 | -0.14 | 0.301 below average | — |
| Leody Taveras (CF) | BAL | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 1 | 1 / 1 | 0.14 | 0.271 weak | — |
| Jo Adell (LF) | CLE | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 3 / 1 | 0 | 0.326 above average | — |
| Nathaniel Lowe (1B) | CLE | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 2 / 1 | 1 / 1 | 0 / 0 | 1 / 1 | 0 | 0.336 above average | — |
| Jeremiah Jackson (RF) | BAL | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 2 / 1 | 0 | 0.286 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.277 | positive favors home; negative favors away |
| Recent form | -0.542 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.08 | positive favors home; negative favors away |
| Composite | -0.643 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.41-4.3 | n/a | Base ML historical model prediction |
| variance_applied | 4-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-3 | 0.558 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-3 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-3 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-3 | n/a | Capped at max 12 realistic runs |
| simulation_result | 4-3 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.41-4.3 | 4-4 | -0.106 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-4 | 4-3 | 1 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-3 | 4-3 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-3 | 4-3 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-3 | 4-3 | -0 | Capped at max 12 realistic runs |
| simulation_result | 4-3 | 4-3 | -0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| CLE | José Ramírez | batter / 3B | better | predicted_AB -2.63 |
| CLE | Nathaniel Lowe | batter / 1B | worse | predicted_RBI 2.44 |
| BAL | Gunnar Henderson | batter / SS | worse | predicted_SO 2.035 |
| BAL | Carlos Narváez | batter / C | better | predicted_H 1.84 |
| BAL | Jeremiah Jackson | batter / RF | worse | predicted_RBI 1.573 |
| BAL | Rece Hinds | batter / LF | better | predicted_AB 1.333 |
| CLE | Chase DeLauter | batter / RF | worse | predicted_AB 1.25 |
| CLE | Patrick Bailey | batter / C | worse | predicted_SO 1.169 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | BAL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | BAL |
| info | CURRENT_PITCHER_DUPLICATION | CLE pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | CLE |
| info | CURRENT_FINALIZED_MATCH_BOX | BAL model-prediction batting totals differ from final simulation box score (AB: current=32, sim=34; H: current=8, sim=7; RBI: current=4, sim=3; SO: current=10, sim=7). | BAL |
| info | CURRENT_PLAYER_MATCH_BOX | BAL current finalized hitter lines are model predictions and differ from the simulation box score: Coby Mayo: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=1 box=0; Jackson Holliday: R current=0 box=1, SO current=2 box=0; Rece Hinds: AB current=3 box=4; Christian Encarnacion-Strand: RBI current=1 box=0, SO current=1 box=0; Gunnar Henderson: H current=1 box=0, R current=1 box=0, SO current=1 box=3; Jeremiah Jackson: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=2, R current=0 box=1; Pete Alonso: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Carlos Narváez: H current=0 box=2, R current=0 box=1, BB current=0 box=1, SO current=1 box=0 | BAL |
| info | CURRENT_FINALIZED_MATCH_BOX | CLE model-prediction batting totals differ from final simulation box score (AB: current=33, sim=32; H: current=8, sim=5; 2B: current=2, sim=0; HR: current=1, sim=2; R: current=5, sim=4; BB: current=3, sim=5; SO: current=7, sim=5; HBP: current=0, sim=1). | CLE |
| info | CURRENT_PLAYER_MATCH_BOX | CLE current finalized hitter lines are model predictions and differ from the simulation box score: Steven Kwan: H current=1 box=0, R current=1 box=0, SO current=0 box=1; Jo Adell: H current=1 box=2, RBI current=1 box=0, R current=0 box=1, SO current=1 box=0; Travis Bazzana: H current=1 box=0, SO current=1 box=0, HBP current=0 box=1; Angel Genao: AB current=4 box=3, H current=1 box=0, R current=1 box=0, BB current=0 box=1; Patrick Bailey: AB current=3 box=4, H current=0 box=1, R current=0 box=1, SO current=1 box=2; Nathaniel Lowe: RBI current=1 box=3; Chase DeLauter: AB current=4 box=5, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; José Ramírez: AB current=4 box=2, 2B current=1 box=0, HR current=0 box=1, BB current=1 box=2 | CLE |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| COL | Tomoyuki Sugano | 3 ER / 14 outs | 5 ER / 18 outs | 2 |
| NYY | Will Warren | 4 ER / 15 outs | 1 ER / 18 outs | -3 |
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: Will Warren (NYY) posted 1.50 ERA vs projected 7.20 (1 ER in 18 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
Tomoyuki Sugano (COL) threw 18 outs, 5 ER = 7.5 ERA against a projected 5.79 ERA (1.71 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 6 runs on 7 hits and 3 HR, against a projected 5 runs / 8 hits (1 runs vs projection).
Who did the damage to him:
Verdict: offense: the lineup scored well below its projection
HOME pitching
Will Warren (NYY) threw 18 outs, 1 ER = 1.5 ERA against a projected 7.2 ERA (-5.7 ERA error)
Bullpen behind him: 0 ER over 3 outs.
The AWAY lineup he faced produced 1 runs on 5 hits and 1 HR, against a projected 4 runs / 8 hits (-3 runs vs projection).
Who did the damage to him:
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.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| COL | Tomoyuki Sugano (Starter) | 18 / 14 | 7.5 / 5.79 | 5 / 3 | 4 / 3 | 2 / 1 | 3 / 2 | 0.97 | 5 / 7 | 3.49 | venue away: 5.46 vs 4.96 ERA (worse here) · opp run factor 0.99 (average) · 25 prior appearances this season |
| NYY | Will Warren (Starter) | 18 / 15 | 1.5 / 7.2 (-5.70) | 1 / 4 | 4 / 3 | 1 / 0 | 2 / 2 | 1.93 | 8 / 5 | 5.4 | venue home: 4.06 vs 4.45 ERA (ok) · opp run factor 1.03 (average) · 28 prior appearances this season |
| NYY | Paul Blackburn (Middle Reliever (High Leverage)) | 3 / 4 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0.43 | 1 / 0 | 1.4 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Ben Rice (DH) | NYY | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -1.73 | 0.376 elite | bad day |
| Connor Norby (2B) | COL | 3 / 3 | 2 / 1 | 1 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 1.71 | 0.298 below average | good day |
| Hunter Goodman (DH) | COL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -1.4 | 0.323 above average | bad day |
| Luis García Jr. (1B) | NYY | 4 / 4 | 2 / 1 | 1 / 1 | 0 / 0 | 1 / 0 | 1 / 1 | 2 / 0 | 0 / 0 | 2 / 1 | 1.4 | 0.348 elite | projection too low |
| Spencer Jones (CF) | NYY | 2 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 2 / 0 | 0 / 1 | 0.97 | 0.324 above average | projection too low |
| George Lombard Jr. (SS) | NYY | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 4 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0.93 | 0.283 weak | good day |
| Zac Veen (LF) | COL | 2 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 0.8 | 0.291 below average | good day |
| Aaron Judge (RF) | NYY | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | -0.79 | 0.411 elite | bad day |
| Cole Carrigg (SS) | COL | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 2 / 1 | -0.78 | 0.317 average | no signal |
| Cody Bellinger (LF) | NYY | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | 1 / 0 | 0.6 | 0.339 above average | projection too low |
| Mickey Moniak (RF) | COL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 3 / 1 | -0.47 | 0.282 weak | — |
| Brett Sullivan (C) | COL | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 2 / 1 | -0.47 | 0.288 below average | — |
| TJ Rumfield (1B) | COL | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | -0.47 | 0.335 above average | — |
| José Caballero (2B) | NYY | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | -0.47 | 0.28 weak | — |
| Ryan McMahon (3B) | NYY | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.304 average | — |
| Austin Wells (C) | NYY | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0.33 | 0.29 below average | — |
| Jake McCarthy (CF) | COL | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -0.31 | 0.322 above average | — |
| Kyle Karros (3B) | COL | 4 / 3 | 1 / 1 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0.29 | 0.337 above average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 1.571 | positive favors home; negative favors away |
| Recent form | 0.95 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.048 | positive favors home; negative favors away |
| Composite | 1.897 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.04-5.58 | n/a | Base ML historical model prediction |
| variance_applied | 4-6 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-8 | 0.784 | Enhanced ML with recent form, H2H, low-score analysis |
| embedded_savant_run_environment | 4-9 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-9 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-9 | n/a | Capped at max 12 realistic runs |
| simulation_result | 4-9 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.04-5.58 | 4-6 | 0.457 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-6 | 4-8 | 2 | Enhanced ML with recent form, H2H, low-score analysis |
| embedded_savant_run_environment | 4-8 | 4-9 | 1 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-9 | 4-9 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-9 | 4-9 | 0 | Capped at max 12 realistic runs |
| simulation_result | 4-9 | 4-9 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| NYY | Ben Rice | batter / DH | better | predicted_RBI 2.49 |
| NYY | Aaron Judge | batter / RF | better | predicted_HR 1.79 |
| COL | Brett Sullivan | batter / C | deboosted | predicted_RBI 1.56 |
| NYY | Ryan McMahon | batter / 3B | better | predicted_H 1.35 |
| NYY | George Lombard Jr. | batter / SS | better | predicted_H 1.31 |
| NYY | José Caballero | batter / 2B | better | predicted_H 1.226 |
| NYY | Austin Wells | batter / C | worse | predicted_AB 1.187 |
| COL | Jake McCarthy | batter / CF | worse | predicted_H -1.13 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | COL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | COL |
| info | CURRENT_PITCHER_DUPLICATION | NYY pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | NYY |
| info | CURRENT_FINALIZED_MATCH_BOX | COL model pitcher projections differ from final simulation pitching box score (ER: current=8, sim=9). | COL |
| info | CURRENT_FINALIZED_MATCH_BOX | COL model-prediction batting totals differ from final simulation box score (AB: current=32, sim=30; H: current=8, sim=3; 2B: current=2, sim=0; 3B: current=0, sim=2; HR: current=1, sim=0; RBI: current=5, sim=4; BB: current=3, sim=4; SO: current=9, sim=5). | COL |
| info | CURRENT_PLAYER_MATCH_BOX | COL current finalized hitter lines are model predictions and differ from the simulation box score: Jake McCarthy: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Cole Carrigg: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Hunter Goodman: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Mickey Moniak: R current=0 box=1, SO current=1 box=0; Connor Norby: H current=1 box=0, SO current=1 box=0; Brett Sullivan: AB current=3 box=4, 3B current=0 box=1, RBI current=1 box=2, R current=0 box=1; Kyle Karros: H current=1 box=0, SO current=1 box=0; TJ Rumfield: AB current=4 box=3, 3B current=0 box=1, RBI current=0 box=1, SO current=1 box=0 | COL |
| info | CURRENT_FINALIZED_MATCH_BOX | NYY model-prediction batting totals differ from final simulation box score (AB: current=32, sim=36; H: current=8, sim=12; HR: current=2, sim=5; RBI: current=4, sim=9; R: current=5, sim=9; SO: current=8, sim=9). | NYY |
| info | CURRENT_PLAYER_MATCH_BOX | NYY current finalized hitter lines are model predictions and differ from the simulation box score: Cody Bellinger: AB current=4 box=5, BB current=1 box=0, SO current=0 box=1; Aaron Judge: AB current=4 box=3, H current=1 box=2, HR current=1 box=2, RBI current=1 box=2; Luis García Jr.: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=0 box=1; Ben Rice: AB current=4 box=5, H current=1 box=3, 2B current=0 box=1, HR current=1 box=0; Spencer Jones: H current=1 box=0, SO current=1 box=2; José Caballero: AB current=3 box=4, H current=1 box=2, HR current=0 box=1, RBI current=0 box=1; George Lombard Jr.: H current=1 box=2, HR current=0 box=1, RBI current=0 box=1, R current=0 box=1; Ryan McMahon: AB current=3 box=4, H current=1 box=2, HR current=0 box=1, RBI current=0 box=1 | NYY |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| HOU | Hunter Brown | 4 ER / 17 outs | 4 ER / 15 outs | 0 |
| PHI | Cristopher Sánchez | 2 ER / 19 outs | 6 ER / 18 outs | 4 |
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: Cristopher Sánchez (PHI) posted 9.00 ERA vs projected 2.84 (6 ER in 18 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
Hunter Brown (HOU) threw 15 outs, 4 ER = 7.2 ERA against a projected 6.35 ERA (0.85 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 10 runs on 11 hits and 2 HR, against a projected 4 runs / 8 hits (6 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Cristopher Sánchez (PHI) threw 18 outs, 6 ER = 9 ERA against a projected 2.84 ERA (6.16 ERA error)
Bullpen behind him: 1 ER over 6 outs.
The AWAY lineup he faced produced 7 runs on 12 hits and 2 HR, against a projected 4 runs / 8 hits (3 runs vs projection).
Who did the damage to him:
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.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| HOU | Hunter Brown (Starter) | 15 / 17 | 7.2 / 6.35 | 4 / 4 | 7 / 2 | 1 / 2 | 0 / 3 | 2.86 | 7 / 7 | 5.59 | venue away: 2.67 vs 3.71 ERA (ok) · opp run factor 1 (average) · 16 prior appearances this season |
| PHI | Cristopher Sánchez (Starter) | 18 / 19 | 9 / 2.84 (+6.16) | 6 / 2 | 10 / 4 | 2 / 0 | 0 / 2 | 1.44 | 3 / 7 | 6.22 | venue home: 1.83 vs 3.68 ERA (ok) · opp run factor 0.92 (average) · 29 prior appearances this season |
| PHI | Jhoan Duran (Closer) | 3 / 3 | 0 / 9 (-9.00) | 0 / 1 | 0 / 3 | 0 / 0 | 0 / 0 | 0.17 | 2 / 1 | 1.2 | |
| PHI | Jonathan Bowlan (Setup Man) | 3 / 3 | 9 / 0 (+9.00) | 1 / 0 | 2 / 1 | 0 / 0 | 0 / 0 | 0.21 | 1 / 1 | 1.24 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Cam Smith (RF) | HOU | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 2 / 0 | 0 / 0 | 0 / 1 | 1.4 | 0.319 average | no signal |
| Isaac Paredes (3B) | HOU | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 3 / 1 | 1 / 0 | 0 / 1 | 1 / 1 | 1.07 | 0.32 average | no signal |
| Trea Turner (SS) | PHI | 5 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 2 / 1 | 0 / 1 | 1 / 1 | 1.07 | 0.294 below average | good day |
| Luis Arraez (2B) | PHI | 4 / 4 | 2 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 0.8 | 0.305 average | no signal |
| Bryan De La Cruz (RF) | PHI | 3 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 2 / 0 | 1 / 0 | 0 / 1 | 0.8 | 0.281 weak | good day |
| Jeremy Peña (SS) | HOU | 5 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 0 | 2 / 1 | 0.78 | 0.325 above average | projection too low |
| Yainer Diaz (C) | HOU | 4 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 0.78 | 0.3 below average | good day |
| Christian Walker (1B) | HOU | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | -0.78 | 0.303 below average | projection too high |
| Yordan Alvarez (DH) | HOU | 5 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | -0.48 | 0.447 elite | — |
| Bryson Stott (3B) | PHI | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 1 / 1 | -0.47 | 0.33 above average | — |
| J.T. Realmuto (C) | PHI | 4 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 2 / 1 | 0.47 | 0.321 above average | — |
| Kyle Schwarber (1B) | PHI | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 4 / 1 | 1 / 1 | 0 / 1 | 3 / 1 | -0.33 | 0.369 elite | — |
| Jose Altuve (2B) | HOU | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 1 / 1 | 0.31 | 0.274 weak | — |
| Jorge Barrosa (LF) | HOU | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.235 weak | — |
| Daulton Varsho (CF) | HOU | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0 | 0.292 below average | — |
| Bryce Harper (DH) | PHI | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 1 / 1 | 1 / 1 | 3 / 1 | 0 | 0.391 elite | — |
| Justin Crawford (CF) | PHI | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 0 | 0.281 weak | — |
| Brandon Marsh (LF) | PHI | 2 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.306 average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.378 | positive favors home; negative favors away |
| Recent form | -0.314 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.077 | positive favors home; negative favors away |
| Composite | 0.479 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.33-5.11 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 3-4 | 0.52 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 3-4 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 3-4 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 3-4 | n/a | Capped at max 12 realistic runs |
| simulation_result | 3-4 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.33-5.11 | 4-5 | 0.213 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 3-4 | 0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 3-4 | 3-4 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 3-4 | 3-4 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 3-4 | 3-4 | 0 | Capped at max 12 realistic runs |
| simulation_result | 3-4 | 3-4 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| PHI | Trea Turner | batter / SS | worse | predicted_RBI 2.45 |
| PHI | Luis Arraez | batter / 2B | worse | predicted_AB -2.42 |
| HOU | Yainer Diaz | batter / C | worse | predicted_SO 2.387 |
| PHI | Brandon Marsh | batter / LF | worse | predicted_AB -1.544 |
| HOU | Daulton Varsho | batter / CF | worse | predicted_AB -1.54 |
| HOU | Jorge Barrosa | batter / LF | worse | predicted_AB 1.5 |
| PHI | Bryan De La Cruz | batter / RF | worse | predicted_SO 1.381 |
| PHI | Bryson Stott | batter / 3B | worse | predicted_SO 1.343 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | HOU pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | HOU |
| info | CURRENT_PITCHER_DUPLICATION | PHI pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | PHI |
| info | CURRENT_FINALIZED_MATCH_BOX | HOU model-prediction batting totals differ from final simulation box score (AB: current=34, sim=35; 2B: current=1, sim=3; HR: current=1, sim=0; RBI: current=4, sim=3; R: current=4, sim=3; BB: current=2, sim=4). | HOU |
| info | CURRENT_PLAYER_MATCH_BOX | HOU current finalized hitter lines are model predictions and differ from the simulation box score: Isaac Paredes: AB current=4 box=5, RBI current=1 box=0, BB current=1 box=0; Jose Altuve: H current=1 box=2, 2B current=0 box=1, RBI current=0 box=1; Yordan Alvarez: H current=1 box=2, 2B current=0 box=1, HR current=1 box=0, SO current=1 box=2; Jeremy Peña: BB current=0 box=1, SO current=1 box=2; Yainer Diaz: H current=1 box=0, R current=1 box=0, SO current=1 box=3; Jorge Barrosa: AB current=3 box=4, H current=0 box=1, SO current=1 box=0; Christian Walker: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Daulton Varsho: AB current=4 box=3, 2B current=0 box=1, BB current=0 box=1, SO current=1 box=0 | HOU |
| info | CURRENT_FINALIZED_MATCH_BOX | PHI model-prediction batting totals differ from final simulation box score (AB: current=32, sim=26; H: current=8, sim=2; 2B: current=1, sim=0; HR: current=1, sim=2). | PHI |
| info | CURRENT_PLAYER_MATCH_BOX | PHI current finalized hitter lines are model predictions and differ from the simulation box score: Bryce Harper: HR current=0 box=1, BB current=1 box=0, SO current=1 box=0; Kyle Schwarber: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Bryson Stott: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Luis Arraez: AB current=4 box=2, H current=1 box=0, 2B current=1 box=0, R current=0 box=1; Trea Turner: AB current=4 box=3, HR current=0 box=1, RBI current=0 box=3; Justin Crawford: H current=1 box=0, SO current=1 box=0; Brandon Marsh: AB current=3 box=2, H current=1 box=0, BB current=0 box=1, SO current=1 box=2; Bryan De La Cruz: H current=1 box=0, RBI current=1 box=0, SO current=1 box=2 | PHI |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| LAA | Ryan Johnson | 4 ER / 16 outs | 3 ER / 18 outs | -1 |
| BOS | Jake Bennett | 3 ER / 17 outs | 6 ER / 16 outs | 3 |
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: Jake Bennett (BOS) posted 10.12 ERA vs projected 4.76 (6 ER in 16 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
Ryan Johnson (LAA) threw 18 outs, 3 ER = 4.5 ERA against a projected 6.75 ERA (-2.25 ERA error)
Bullpen behind him: 1 ER over 4 outs.
The HOME lineup he faced produced 4 runs on 8 hits and 2 HR, against a projected 4 runs / 8 hits (0 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Jake Bennett (BOS) threw 16 outs, 6 ER = 10.12 ERA against a projected 4.76 ERA (5.36 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The AWAY lineup he faced produced 6 runs on 12 hits and 3 HR, against a projected 3 runs / 8 hits (3 runs vs projection).
Who did the damage to him:
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.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| LAA | Ryan Johnson (Starter) | 18 / 16 | 4.5 / 6.75 | 3 / 4 | 5 / 4 | 2 / 0 | 1 / 3 | 2.47 | 5 / 7 | 4.46 | venue away: 5.72 vs 3.18 ERA (worse here) · opp run factor 0.93 (average) · 18 prior appearances this season |
| LAA | Ben Joyce (Closer) | 3 / 3 | 9 / 9 | 1 / 1 | 1 / 1 | 0 / 0 | 1 / 1 | 0.56 | 1 / 0 | 1.41 | |
| LAA | Tayler Saucedo (Middle Reliever (High Leverage)) | 1 / 5 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0.16 | 1 / 1 | 0.83 | |
| BOS | Jake Bennett (Starter) | 16 / 17 | 10.12 / 4.76 (+5.36) | 6 / 3 | 9 / 7 | 3 / 1 | 1 / 1 | 1.04 | 2 / 6 | 5.58 | venue home: 3.52 vs 3.19 ERA (ok) · opp run factor 1.02 (weak) · 17 prior appearances this season |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Denzer Guzman (3B) | LAA | 4 / 3 | 3 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 2 / 1 | 0 / 0 | 0 / 1 | 1.87 | 0.263 weak | good day |
| Jose Siri (RF) | LAA | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 1.4 | 0.302 below average | good day |
| Mickey Gasper (C) | BOS | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | -0.8 | 0.374 elite | bad day |
| Jarren Duran (LF) | BOS | 3 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 2 / 0 | 1 / 0 | 0 / 1 | 0.8 | 0.3 below average | good day |
| Vaughn Grissom (1B) | LAA | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | -0.78 | 0.315 average | no signal |
| Oswald Peraza (2B) | LAA | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0.271 weak | — |
| Tyler Heineman (C) | LAA | 3 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.239 weak | — |
| Nate Eaton (CF) | BOS | 4 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.291 below average | — |
| Isiah Kiner-Falefa (2B) | BOS | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | -0.47 | 0.315 average | — |
| Kyren Paris (LF) | LAA | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 0.33 | 0.247 weak | — |
| Mike Trout (CF) | LAA | 4 / 4 | 1 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 1 | -0.33 | 0.375 elite | — |
| Nick Sogard (1B) | BOS | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 2 / 1 | -0.33 | 0.321 above average | — |
| Trevor Story (SS) | BOS | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | -0.31 | 0.246 weak | — |
| Roman Anthony (DH) | BOS | 5 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 2 / 0 | 1 / 0 | 0 / 1 | 3 / 1 | 0.29 | 0.352 elite | — |
| Christian Moore (DH) | LAA | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 3 / 1 | -0.14 | 0.249 weak | — |
| Zach Neto (SS) | LAA | 3 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 3 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | 0.14 | 0.307 average | — |
| Caleb Durbin (3B) | BOS | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 0 | 0.291 below average | — |
| Wilyer Abreu (RF) | BOS | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 1 / 1 | 1 / 1 | 0 / 1 | 0 | 0.347 elite | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.917 | positive favors home; negative favors away |
| Recent form | 0.33 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.086 | positive favors home; negative favors away |
| Composite | 0.578 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.09-5.51 | n/a | Base ML historical model prediction |
| variance_applied | 4-6 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 0.529 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-5 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-5 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-5 | n/a | Capped at max 12 realistic runs |
| simulation_result | 4-5 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.09-5.51 | 4-6 | 0.583 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-6 | 4-5 | -1 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-5 | 4-5 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-5 | 4-5 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-5 | 4-5 | 0 | Capped at max 12 realistic runs |
| simulation_result | 4-5 | 4-5 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| LAA | Kyren Paris | batter / LF | better | predicted_SO -2 |
| BOS | Roman Anthony | batter / DH | better | predicted_RBI 1.825 |
| LAA | Oswald Peraza | batter / 2B | better | predicted_RBI 1.82 |
| LAA | Vaughn Grissom | batter / 1B | worse | predicted_AB -1.636 |
| LAA | Zach Neto | batter / SS | worse | predicted_H -1.59 |
| LAA | Jose Siri | batter / RF | worse | predicted_AB 1.493 |
| LAA | Tyler Heineman | batter / C | worse | predicted_AB 1.305 |
| LAA | Christian Moore | batter / DH | better | predicted_SO -1.182 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | BOS pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | BOS |
| info | CURRENT_PITCHER_DUPLICATION | LAA pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | LAA |
| info | CURRENT_FINALIZED_MATCH_BOX | BOS model-prediction batting totals differ from final simulation box score (AB: current=32, sim=29; H: current=8, sim=5; 2B: current=2, sim=3; 3B: current=0, sim=1; HR: current=1, sim=0; RBI: current=4, sim=5; R: current=4, sim=5; SO: current=7, sim=8). | BOS |
| info | CURRENT_PLAYER_MATCH_BOX | BOS current finalized hitter lines are model predictions and differ from the simulation box score: Mickey Gasper: H current=1 box=0, SO current=1 box=0; Roman Anthony: RBI current=0 box=2, R current=0 box=1, BB current=1 box=0; Nick Sogard: H current=1 box=0, R current=1 box=0, BB current=1 box=0, SO current=1 box=0; Caleb Durbin: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=0 box=1; Trevor Story: H current=1 box=2, R current=0 box=1, SO current=1 box=2; Nate Eaton: AB current=3 box=2, BB current=0 box=1, SO current=1 box=0; Wilyer Abreu: 3B current=0 box=1, HR current=1 box=0, BB current=1 box=0, SO current=1 box=2; Jarren Duran: AB current=4 box=3, 2B current=0 box=1, R current=0 box=1 | BOS |
| info | CURRENT_FINALIZED_MATCH_BOX | LAA model-prediction batting totals differ from final simulation box score (AB: current=32, sim=34; R: current=3, sim=4; BB: current=2, sim=1; SO: current=9, sim=10; SF: current=0, sim=1). | LAA |
| info | CURRENT_PLAYER_MATCH_BOX | LAA current finalized hitter lines are model predictions and differ from the simulation box score: Vaughn Grissom: AB current=4 box=2, H current=1 box=0, 2B current=1 box=0, R current=0 box=1; Jose Siri: H current=1 box=2, RBI current=1 box=0, R current=0 box=1; Christian Moore: 2B current=0 box=1, RBI current=1 box=0, SO current=1 box=0; Kyren Paris: AB current=3 box=4, SO current=1 box=0; Zach Neto: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Mike Trout: H current=1 box=2, 2B current=1 box=0, RBI current=0 box=1, BB current=1 box=0; Denzer Guzman: AB current=3 box=4, H current=1 box=0, R current=1 box=0, SO current=1 box=2; Oswald Peraza: AB current=3 box=4, H current=1 box=2, 2B current=0 box=1, HR current=0 box=1 | LAA |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
No large single-factor errors.
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| MIN | Zebby Matthews | 4 ER / 18 outs | 5 ER / 7 outs | 1 |
| DET | Keider Montero | 3 ER / 17 outs | 2 ER / 12 outs | -1 |
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: Zebby Matthews (MIN) posted 19.29 ERA vs projected 6.00 (5 ER in 7 outs); he is materially worse pitching away (6.45 ERA there vs 2.84 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
Zebby Matthews (MIN) threw 7 outs, 5 ER = 19.29 ERA against a projected 6 ERA (13.29 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 4 runs on 6 hits and 1 HR, against a projected 4 runs / 7 hits (0 runs vs projection).
Who did the damage to him:
Verdict: both: the starter was hit hard AND the lineup underproduced
HOME pitching
Keider Montero (DET) threw 12 outs, 2 ER = 4.5 ERA against a projected 4.76 ERA (-0.26 ERA error)
Bullpen behind him: 0 ER over 9 outs.
The AWAY lineup he faced produced 2 runs on 5 hits and 2 HR, against a projected 4 runs / 7 hits (-2 runs vs projection).
Who did the damage to him:
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.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| MIN | Zebby Matthews (Starter) | 7 / 18 | 19.29 / 6 (+13.29) | 5 / 4 | 2 / 5 | 1 / 0 | 4 / 1 | 1.19 | 2 / 6 | 4.28 | venue away: 6.45 vs 2.84 ERA (worse here) · opp run factor 0.97 (average) · 20 prior appearances this season |
| DET | Keider Montero (Starter) | 12 / 17 | 4.5 / 4.76 | 2 / 3 | 2 / 3 | 2 / 1 | 2 / 3 | 1.37 | 2 / 7 | 3.14 | venue home: 3.24 vs 4.31 ERA (ok) · opp run factor 0.96 (average) · 29 prior appearances this season |
| DET | Kyle Finnegan (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 9 (-9.00) | 0 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0.54 | 0 / 0 | 0.84 | |
| DET | Tyler Holton (Setup Man) | 6 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0.34 | 2 / 2 | 0.78 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Josh Bell (DH) | MIN | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 0 / 0 | 0 / 1 | 1.4 | 0.334 above average | projection too low |
| Luke Keaschall (RF) | MIN | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | -1.11 | 0.316 average | no signal |
| Colt Keith (1B) | DET | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 0.93 | 0.334 above average | projection too low |
| Dillon Dingler (C) | DET | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 2 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -0.93 | 0.341 elite | bad day |
| Brooks Lee (3B) | MIN | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | -0.47 | 0.276 weak | — |
| Kaelen Culpepper (SS) | MIN | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -0.47 | 0.309 average | — |
| Royce Lewis (1B) | MIN | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | -0.47 | 0.313 average | — |
| Victor Caratini (C) | MIN | 3 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0.47 | 0.319 average | — |
| Riley Greene (DH) | DET | 2 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 2 / 1 | 0 / 1 | -0.45 | 0.37 elite | — |
| Walker Jenkins (CF) | MIN | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | 0.33 | 0.273 weak | — |
| Max Clark (CF) | DET | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 0 | 1 / 1 | 0.33 | 0.307 average | — |
| John Peck (SS) | DET | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | 1 / 1 | 0.33 | 0.329 above average | — |
| Kevin McGonigle (3B) | DET | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 2 / 0 | 0.31 | 0.351 elite | — |
| Brett Callahan (LF) | DET | 4 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0.31 | 0.314 average | — |
| Kody Clemens (2B) | MIN | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 1 / 1 | 0 / 0 | 1 / 1 | 0 | 0.34 elite | — |
| Trevor Larnach (LF) | MIN | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 0 | 0.324 above average | — |
| Ben Malgeri (RF) | DET | 4 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.326 above average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.198 | positive favors home; negative favors away |
| Recent form | -0.702 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.01 | positive favors home; negative favors away |
| Composite | 0.136 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.16-4.79 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 0.524 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-5 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-5 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-5 | n/a | Capped at max 12 realistic runs |
| simulation_result | 4-5 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.16-4.79 | 4-5 | 0.369 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 4-5 | 0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-5 | 4-5 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-5 | 4-5 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-5 | 4-5 | 0 | Capped at max 12 realistic runs |
| simulation_result | 4-5 | 4-5 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| MIN | Trevor Larnach | batter / LF | better | predicted_RBI 1.62 |
| DET | Brett Callahan | batter / LF | deboosted | predicted_AB 1.5 |
| DET | Riley Greene | batter / DH | better | predicted_RBI 1.475 |
| MIN | Luke Keaschall | batter / RF | worse | predicted_SO 1.4 |
| MIN | Kaelen Culpepper | batter / SS | worse | predicted_AB -1.29 |
| MIN | Royce Lewis | batter / 1B | worse | predicted_AB -1.2 |
| MIN | Josh Bell | batter / DH | worse | predicted_SO 1.187 |
| MIN | Victor Caratini | batter / C | worse | predicted_AB -1.151 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | DET pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | DET |
| info | CURRENT_PITCHER_DUPLICATION | MIN pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | MIN |
| info | CURRENT_FINALIZED_MATCH_BOX | DET model-prediction batting totals differ from final simulation box score (AB: current=31, sim=32; H: current=8, sim=7; RBI: current=4, sim=5; BB: current=3, sim=1; SO: current=8, sim=7). | DET |
| info | CURRENT_PLAYER_MATCH_BOX | DET current finalized hitter lines are model predictions and differ from the simulation box score: Kevin McGonigle: BB current=1 box=0, SO current=0 box=1; Colt Keith: R current=0 box=1, BB current=0 box=1; Riley Greene: RBI current=1 box=2, BB current=1 box=0, SO current=1 box=0; Max Clark: H current=1 box=0, R current=1 box=0, SO current=1 box=2; Ben Malgeri: H current=0 box=1, SO current=1 box=0; Dillon Dingler: HR current=1 box=0; Brett Callahan: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=1, R current=0 box=1; Gleyber Torres: RBI current=1 box=0, R current=1 box=0, BB current=1 box=0 | DET |
| info | CURRENT_FINALIZED_MATCH_BOX | MIN model pitcher projections differ from final simulation pitching box score (H: current=6, sim=7). | MIN |
| info | CURRENT_FINALIZED_MATCH_BOX | MIN model-prediction batting totals differ from final simulation box score (AB: current=33, sim=31; H: current=7, sim=4; 2B: current=1, sim=0; BB: current=2, sim=3; SO: current=6, sim=10). | MIN |
| info | CURRENT_PLAYER_MATCH_BOX | MIN current finalized hitter lines are model predictions and differ from the simulation box score: Luke Keaschall: H current=1 box=0, 2B current=1 box=0, R current=1 box=0, BB current=1 box=0; Josh Bell: RBI current=1 box=0, SO current=1 box=2; Kody Clemens: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Trevor Larnach: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=2, R current=0 box=1; Brooks Lee: R current=0 box=1, SO current=0 box=1; Kaelen Culpepper: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Royce Lewis: AB current=4 box=3, H current=1 box=0, BB current=0 box=1; Victor Caratini: AB current=3 box=2, BB current=0 box=1, SO current=0 box=1 | MIN |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| NYM | Robert Stock | 3 ER / 13 outs | 3 ER / 12 outs | 0 |
| MIA | Janson Junk | 3 ER / 15 outs | 8 ER / 9 outs | 5 |
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: Janson Junk (MIA) posted 24.00 ERA vs projected 5.40 (8 ER in 9 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
Robert Stock (NYM) threw 12 outs, 3 ER = 6.75 ERA against a projected 6.23 ERA (0.52 ERA error) only 7 prior appearances in the covered season - the projection had little of his own record to stand on
Bullpen behind him: 6 ER over 9 outs.
The HOME lineup he faced produced 14 runs on 20 hits and 2 HR, against a projected 5 runs / 8 hits (9 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Janson Junk (MIA) threw 9 outs, 8 ER = 24 ERA against a projected 5.4 ERA (18.6 ERA error)
Bullpen behind him: 4 ER over 12 outs.
The AWAY lineup he faced produced 12 runs on 12 hits and 1 HR, against a projected 5 runs / 8 hits (7 runs vs projection).
Who did the damage to him:
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.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| NYM | Robert Stock (Starter) | 12 / 13 | 6.75 / 6.23 | 3 / 3 | 5 / 5 | 0 / 1 | 2 / 2 | 2.46 | 4 / 4 | 3.94 | venue away: 8.64 vs 4.58 ERA (ok) · opp run factor 0.94 (average) · 7 prior appearances this season |
| NYM | Jonathan Pintaro (Middle Reliever (High Leverage)) | 3 / 4 | 18 / 0 (+18.00) | 2 / 0 | 3 / 0 | 0 / 0 | 0 / 0 | 0.7 | 0 / 1 | 1.17 | |
| NYM | Daniel Duarte (Setup Man) | 5 / 4 | 5.4 / 0 (+5.40) | 1 / 0 | 2 / 0 | 1 / 0 | 1 / 0 | 0.22 | 2 / 1 | 0.94 | |
| NYM | Nathan Lavender (Middle Reliever (High Leverage)) | 1 / 3 | 81 / 0 (+81.00) | 3 / 0 | 4 / 0 | 0 / 0 | 0 / 0 | 0.22 | 0 / 0 | 1.15 | |
| MIA | Janson Junk (Starter) | 9 / 15 | 24 / 5.4 (+18.60) | 8 / 3 | 8 / 4 | 1 / 1 | 1 / 2 | 1.2 | 0 / 3 | 3 | venue home: 3.53 vs 4.78 ERA (ok) · opp run factor 1.02 (average) · 22 prior appearances this season |
| MIA | Calvin Faucher (Closer) | 3 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 0.45 | 2 / 0 | 1.03 | |
| MIA | Michael Petersen (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 27 (-27.00) | 0 / 3 | 0 / 2 | 0 / 1 | 0 / 2 | 0.53 | 1 / 0 | 1.21 | |
| MIA | Tyler Zuber (Setup Man) | 3 / 3 | 27 / 0 (+27.00) | 3 / 0 | 3 / 1 | 1 / 0 | 1 / 0 | 0.27 | 1 / 2 | 1.23 | |
| MIA | Victor Vodnik (Middle Reliever (High Leverage)) | 3 / 3 | 9 / 0 (+9.00) | 1 / 0 | 3 / 0 | 0 / 0 | 0 / 0 | 0.48 | 1 / 0 | 0.76 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Joe Mack (C) | MIA | 5 / 3 | 3 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 3 / 0 | 2 / 0 | 0 / 0 | 1 / 1 | 1.87 | 0.29 below average | good day |
| Owen Caissie (RF) | MIA | 5 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | 2 / 0 | 1 / 0 | 1 / 1 | 1.73 | 0.293 below average | good day |
| Otto Lopez (SS) | MIA | 3 / 4 | 2 / 1 | 0 / 0 | 1 / 0 | 0 / 0 | 2 / 0 | 3 / 1 | 1 / 0 | 0 / 1 | 1.42 | 0.324 above average | projection too low |
| Graham Pauley (3B) | MIA | 6 / 3 | 3 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 1.41 | 0.238 weak | good day |
| Juan Soto (LF) | NYM | 5 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 0 | -1.4 | 0.419 elite | bad day |
| Luis Torrens (C) | NYM | 5 / 3 | 3 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 4 / 0 | 2 / 0 | 0 / 0 | 1 / 0 | 1.25 | 0.295 below average | good day |
| Jakob Marsee (CF) | MIA | 6 / 4 | 4 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 3 / 0 | 1 / 1 | 0 / 1 | 0 / 1 | 1.08 | 0.309 average | no signal |
| Griffin Conine (1B) | MIA | 6 / 4 | 3 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 2 / 1 | 0 / 1 | 1 / 1 | 0.92 | 0.367 elite | projection too low |
| Heriberto Hernández (LF) | MIA | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 2 / 0 | 1 / 1 | -0.74 | 0.355 elite | bad day |
| Bo Bichette (3B) | NYM | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 2 / 0 | 1 / 0 | 0.66 | 0.328 above average | projection too low |
| A.J. Ewing (CF) | NYM | 4 / 4 | 3 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 2 / 0 | 0 / 1 | 1 / 1 | 0.61 | 0.321 above average | projection too low |
| Francisco Lindor (SS) | NYM | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 3 / 1 | 2 / 1 | 0 / 1 | 1 / 1 | 0.6 | 0.336 above average | projection too low |
| Jared Young (DH) | NYM | 5 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 3 / 1 | 1 / 0 | 0 / 1 | 0.49 | 0.31 average | — |
| Brett Baty (1B) | NYM | 1 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.313 average | — |
| Marcus Semien (2B) | NYM | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 1 / 0 | 0 / 1 | 0.33 | 0.304 average | — |
| Javier Sanoja (2B) | MIA | 6 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0.16 | 0.289 below average | — |
| Carson Benge (RF) | NYM | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 0 | 1 / 1 | -0.14 | 0.335 above average | — |
| Kyle Stowers (DH) | MIA | 6 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 2 / 1 | -0.02 | 0.333 above average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.068 | positive favors home; negative favors away |
| Recent form | -0.45 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.083 | positive favors home; negative favors away |
| Composite | -0.798 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.23-4.31 | n/a | Base ML historical model prediction |
| variance_applied | 4-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 6-4 | 0.542 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by winner_starter_is_below_average, starter_quality_favours_the_other_side, matchup_recency_guardrail) |
| embedded_savant_run_environment | 7-4 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 7-4 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 7-4 | n/a | Capped at max 12 realistic runs |
| simulation_result | 7-4 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.23-4.31 | 4-4 | 0.075 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-4 | 6-4 | 2 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by winner_starter_is_below_average, starter_quality_favours_the_other_side, matchup_recency_guardrail) |
| embedded_savant_run_environment | 6-4 | 7-4 | 1 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 7-4 | 7-4 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 7-4 | 7-4 | -0 | Capped at max 12 realistic runs |
| simulation_result | 7-4 | 7-4 | -0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| MIA | Otto Lopez | batter / SS | worse | predicted_AB -2.74 |
| NYM | Marcus Semien | batter / 2B | better | predicted_RBI 2.65 |
| NYM | Luis Torrens | batter / C | better | predicted_RBI 2.62 |
| NYM | Francisco Lindor | batter / SS | worse | predicted_SO 2.116 |
| NYM | Juan Soto | batter / LF | worse | predicted_AB -1.52 |
| MIA | Heriberto Hernández | batter / LF | worse | predicted_AB -1.33 |
| MIA | Graham Pauley | batter / 3B | better | predicted_AB 1.326 |
| MIA | Owen Caissie | batter / RF | worse | predicted_AB 1.196 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | MIA pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | MIA |
| info | CURRENT_PITCHER_DUPLICATION | NYM pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | NYM |
| info | CURRENT_FINALIZED_MATCH_BOX | MIA model pitcher projections differ from final simulation pitching box score (ER: current=6, sim=7). | MIA |
| info | CURRENT_FINALIZED_MATCH_BOX | MIA model-prediction batting totals differ from final simulation box score (AB: current=33, sim=32; H: current=8, sim=5; R: current=5, sim=4; BB: current=3, sim=2; SO: current=8, sim=6; HBP: current=0, sim=3). | MIA |
| info | CURRENT_PLAYER_MATCH_BOX | MIA current finalized hitter lines are model predictions and differ from the simulation box score: Kyle Stowers: 2B current=0 box=1, BB current=1 box=0, HBP current=0 box=1; Griffin Conine: AB current=4 box=3, H current=1 box=0, RBI current=0 box=1; Javier Sanoja: 2B current=1 box=0, RBI current=1 box=0; Heriberto Hernández: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Otto Lopez: AB current=4 box=2, H current=1 box=0, R current=1 box=0, SO current=1 box=0; Owen Caissie: AB current=3 box=4, RBI current=1 box=0, SO current=1 box=0; Graham Pauley: AB current=3 box=4, H current=0 box=1, RBI current=0 box=1, R current=0 box=1; Jakob Marsee: H current=1 box=0, R current=1 box=0, BB current=1 box=0 | MIA |
| info | CURRENT_FINALIZED_MATCH_BOX | NYM model pitcher projections differ from final simulation pitching box score (H: current=6, sim=5). | NYM |
| info | CURRENT_FINALIZED_MATCH_BOX | NYM model-prediction batting totals differ from final simulation box score (AB: current=33, sim=34; H: current=8, sim=7; 2B: current=1, sim=2; HR: current=1, sim=2; RBI: current=4, sim=7; R: current=5, sim=7; BB: current=3, sim=4; SO: current=6, sim=5). | NYM |
| info | CURRENT_PLAYER_MATCH_BOX | NYM current finalized hitter lines are model predictions and differ from the simulation box score: Carson Benge: AB current=4 box=3, H current=1 box=0, BB current=0 box=1, SO current=1 box=0; Jared Young: SO current=1 box=0; Marcus Semien: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=3, R current=0 box=1; A.J. Ewing: AB current=4 box=3, H current=1 box=0; Brett Baty: AB current=3 box=4, H current=0 box=1, R current=0 box=1, SO current=1 box=0; Luis Torrens: AB current=3 box=4, H current=1 box=2, HR current=0 box=1, RBI current=0 box=3; Bo Bichette: RBI current=1 box=0; Francisco Lindor: AB current=4 box=5, H current=1 box=0, RBI current=1 box=0, R current=1 box=0 | NYM |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| PIT | Lake Bachar | 2 ER / 15 outs | 0 ER / 5 outs | -2 |
| CHW | Davis Martin | 4 ER / 15 outs | 1 ER / 15 outs | -3 |
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: Lake Bachar (PIT) posted 0.00 ERA vs projected 3.60 (0 ER in 5 outs); he is materially worse pitching away (3.00 ERA there vs 0.93 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
Lake Bachar (PIT) threw 5 outs, 0 ER = 0 ERA against a projected 3.6 ERA (-3.6 ERA error)
Bullpen behind him: 1 ER over 9 outs.
The HOME lineup he faced produced 2 runs on 6 hits and 1 HR, against a projected 5 runs / 6 hits (-3 runs vs projection).
Who did the damage to him:
Verdict: offense: the lineup scored well below its projection
HOME pitching
No settled pitching line for this club. The forecast named Davis Martin (CHW) at a projected 7.2 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 2 runs on 9 hits and 1 HR, against a projected 5 runs / 8 hits (-3 runs vs projection).
Who did the damage to him:
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.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| PIT | Lake Bachar (Starter) | 5 / 15 | 0 / 3.6 (-3.60) | 0 / 2 | 2 / 5 | 0 / 1 | 1 / 2 | 2.7 | 3 / 6 | 4.81 | venue away: 3 vs 0.93 ERA (worse here) · opp run factor 0.99 (average) · 47 prior appearances this season |
| PIT | Gregory Soto (Middle Reliever (High Leverage)) | 3 / 4 | 0 / 6.75 (-6.75) | 0 / 1 | 1 / 1 | 0 / 1 | 0 / 0 | 0.34 | 2 / 2 | 1.08 | |
| PIT | Luke Weaver (Setup Man) | 3 / 5 | 9 / 5.4 (+3.60) | 1 / 1 | 3 / 2 | 1 / 0 | 0 / 0 | 0.4 | 1 / 0 | 1.14 | |
| PIT | Mason Montgomery (Closer) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 2 | 0.37 | 2 / 1 | 1.49 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Colson Montgomery (3B) | CHW | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 3 / 1 | -1.73 | 0.305 average | no signal |
| Bryan Reynolds (LF) | PIT | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | -1.11 | 0.361 elite | bad day |
| Munetaka Murakami (1B) | CHW | 3 / 4 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | 2 / 1 | 1.07 | 0.344 elite | projection too low |
| Esmerlyn Valdez (RF) | PIT | 2 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 1 / 1 | 0 / 1 | 0.93 | 0.33 above average | projection too low |
| Braden Montgomery (RF) | CHW | 2 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 2 / 1 | 1 / 1 | 0.64 | 0.328 above average | projection too low |
| Jacob Gonzalez (3B) | PIT | 2 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.305 average | — |
| Spencer Horwitz (1B) | PIT | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 1 / 1 | -0.33 | 0.311 average | — |
| Sam Antonacci (2B) | CHW | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | -0.33 | 0.34 elite | — |
| Kyle Teel (C) | CHW | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 1 | 0.33 | 0.311 average | — |
| Andrew Benintendi (DH) | CHW | 2 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0.31 | 0.315 average | — |
| Tristan Peters (CF) | CHW | 3 / 3 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.31 | 0.319 average | — |
| Brandon Lowe (2B) | PIT | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 0 | 2 / 1 | -0.13 | 0.324 above average | — |
| Konnor Griffin (SS) | PIT | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 1 | 1 / 0 | 1 / 1 | 0.02 | 0.304 average | — |
| Nick Gonzales (DH) | PIT | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.327 above average | — |
| Oneil Cruz (CF) | PIT | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | 0 | 0.352 elite | — |
| Rafael Flores Jr. (C) | PIT | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.35 elite | — |
| Chase Meidroth (SS) | CHW | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 0 | 0.292 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.097 | positive favors home; negative favors away |
| Recent form | -0.838 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.056 | positive favors home; negative favors away |
| Composite | -0.32 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 5.63-3.3 | n/a | Base ML historical model prediction |
| variance_applied | 6-3 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 0.598 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run) |
| embedded_savant_run_environment | 5-4 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-4 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-4 | n/a | Capped at max 12 realistic runs |
| simulation_result | 5-4 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 5.63-3.3 | 6-3 | 0.671 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 6-3 | 5-4 | -2 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run) |
| embedded_savant_run_environment | 5-4 | 5-4 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-4 | 5-4 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-4 | 5-4 | -0 | Capped at max 12 realistic runs |
| simulation_result | 5-4 | 5-4 | -0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| PIT | Jacob Gonzalez | batter / 3B | better | predicted_RBI 2.623 |
| PIT | Spencer Horwitz | batter / 1B | worse | predicted_AB -2.09 |
| CHW | Andrew Benintendi | batter / DH | worse | predicted_AB 1.953 |
| CHW | Randal Grichuk | batter / LF | better | predicted_AB 1.5 |
| PIT | Esmerlyn Valdez | batter / RF | worse | predicted_SO -1.493 |
| CHW | Munetaka Murakami | batter / 1B | worse | predicted_SO 1.468 |
| CHW | Sam Antonacci | batter / 2B | better | predicted_SO 1.366 |
| PIT | Oneil Cruz | batter / CF | worse | predicted_H -1.26 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | CHW pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | CHW |
| info | CURRENT_PITCHER_DUPLICATION | PIT pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | PIT |
| info | CURRENT_FINALIZED_MATCH_BOX | CHW model-prediction batting totals differ from final simulation box score (AB: current=32, sim=35; H: current=7, sim=8; 2B: current=2, sim=4; HR: current=1, sim=2; R: current=5, sim=4). | CHW |
| info | CURRENT_PLAYER_MATCH_BOX | CHW current finalized hitter lines are model predictions and differ from the simulation box score: Sam Antonacci: 2B current=0 box=1, R current=1 box=0, SO current=1 box=2; Munetaka Murakami: RBI current=1 box=0, R current=1 box=0, SO current=1 box=3; Randal Grichuk: AB current=3 box=4, SO current=1 box=0; Colson Montgomery: H current=1 box=2, 2B current=0 box=1, HR current=1 box=0, RBI current=1 box=0; Chase Meidroth: H current=1 box=0, R current=1 box=0, BB current=0 box=1, SO current=1 box=0; Braden Montgomery: H current=1 box=2, 2B current=0 box=1, RBI current=0 box=1, BB current=1 box=0; Andrew Benintendi: AB current=4 box=5, HR current=0 box=1, RBI current=1 box=2, R current=0 box=1; Kyle Teel: AB current=3 box=4, H current=0 box=1, HR current=0 box=1, R current=0 box=1 | CHW |
| info | CURRENT_FINALIZED_MATCH_BOX | PIT model-prediction batting totals differ from final simulation box score (AB: current=34, sim=33; H: current=8, sim=6; 2B: current=2, sim=1; HR: current=1, sim=2; RBI: current=4, sim=5; BB: current=3, sim=4; SO: current=9, sim=8; HBP: current=0, sim=1). | PIT |
| info | CURRENT_PLAYER_MATCH_BOX | PIT current finalized hitter lines are model predictions and differ from the simulation box score: Nick Gonzales: RBI current=0 box=1, R current=0 box=1; Konnor Griffin: H current=1 box=0, 2B current=1 box=0, R current=1 box=0, BB current=0 box=1; Esmerlyn Valdez: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Brandon Lowe: AB current=4 box=5, HR current=1 box=0, RBI current=1 box=0; Oneil Cruz: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=1 box=2; Jacob Gonzalez: AB current=3 box=4, H current=0 box=1, HR current=0 box=1, RBI current=0 box=3; Bryan Reynolds: H current=1 box=2, HR current=0 box=1, RBI current=0 box=1, BB current=1 box=0; Spencer Horwitz: AB current=4 box=2, H current=1 box=0, BB current=1 box=2, SO current=1 box=0 | PIT |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| STL | Andre Pallante | 2 ER / 17 outs | 1 ER / 15 outs | -1 |
| SF | Blade Tidwell | 1 ER / 15 outs | 4 ER / 12 outs | 3 |
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: Blade Tidwell (SF) posted 9.00 ERA vs projected 1.80 (4 ER in 12 outs); he is materially worse pitching home (7.80 ERA there vs 2.30 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
Andre Pallante (STL) threw 15 outs, 1 ER = 1.8 ERA against a projected 3.18 ERA (-1.38 ERA error)
Bullpen behind him: 2 ER over 4 outs.
The HOME lineup he faced produced 6 runs on 10 hits and 0 HR, against a projected 4 runs / 8 hits (2 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Blade Tidwell (SF) threw 12 outs, 4 ER = 9 ERA against a projected 1.8 ERA (7.2 ERA error)
Bullpen behind him: 0 ER over 3 outs.
The AWAY lineup he faced produced 6 runs on 7 hits and 1 HR, against a projected 4 runs / 6 hits (2 runs vs projection).
Who did the damage to him:
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.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| STL | Andre Pallante (Starter) | 15 / 17 | 1.8 / 3.18 | 1 / 2 | 5 / 2 | 0 / 0 | 0 / 3 | 2.18 | 4 / 2 | 3.37 | venue away: 2.83 vs 4.02 ERA (ok) · opp run factor 0.94 (weak) · 25 prior appearances this season |
| STL | George Soriano (Setup Man) | 1 / 2 | 54 / 0 (+54.00) | 2 / 0 | 3 / 0 | 0 / 0 | 0 / 0 | 0.35 | 0 / 0 | 0.72 | |
| STL | Justin Bruihl (Middle Reliever (High Leverage)) | 3 / 2 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0.36 | 3 / 0 | 0.74 | |
| SF | Blade Tidwell (Starter) | 12 / 15 | 9 / 1.8 (+7.20) | 4 / 1 | 5 / 5 | 1 / 1 | 2 / 1 | 2.5 | 2 / 3 | 4.54 | venue home: 7.8 vs 2.3 ERA (worse here) · opp run factor 1.01 (average) · 14 prior appearances this season |
| SF | Trent Harris (Setup Man) | 3 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0.43 | 0 / 1 | 1.41 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Nolan Gorman (3B) | STL | 4 / 3 | 2 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0.94 | 0.277 weak | good day |
| Bryce Eldridge (1B) | SF | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 3 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | -0.79 | 0.358 elite | bad day |
| Joshua Baez (RF) | STL | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 0 | 1 / 1 | -0.62 | 0.316 average | no signal |
| Leonardo Bernal (C) | STL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 3 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | 0.6 | 0.344 elite | projection too low |
| Turner Hill (DH) | SF | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 2 / 0 | -0.47 | 0.333 above average | — |
| Christian Koss (SS) | SF | 3 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 0.47 | 0.246 weak | — |
| Jung Hoo Lee (RF) | SF | 4 / 4 | 2 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 2 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0.47 | 0.315 average | — |
| Alec Burleson (1B) | STL | 2 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 2 / 1 | 0 / 1 | -0.45 | 0.376 elite | — |
| Thomas Saggese (2B) | STL | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 0 | 1 / 1 | 0.33 | 0.31 average | — |
| Iván Herrera (DH) | STL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | -0.33 | 0.333 above average | — |
| Drew Cavanaugh (C) | SF | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 1 / 1 | -0.33 | 0.319 average | — |
| Shay Whitcomb (3B) | SF | 4 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0.31 | 0.249 weak | — |
| Drew Gilbert (CF) | SF | 2 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0.31 | 0.324 above average | — |
| Bryan Torres (LF) | STL | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 | 0.3 below average | — |
| Nathan Church (CF) | STL | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 | 0.282 weak | — |
| Jonah Cox (2B) | SF | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 0 / 0 | 1 / 1 | 0 | 0.26 weak | — |
| Grant McCray (LF) | SF | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 3 / 1 | 0 | 0.323 above average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.252 | positive favors home; negative favors away |
| Recent form | 0.63 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.069 | positive favors home; negative favors away |
| Composite | -0.313 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.62-3.84 | n/a | Base ML historical model prediction |
| variance_applied | 5-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 0.521 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-4 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-4 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-4 | n/a | Capped at max 12 realistic runs |
| simulation_result | 5-4 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.62-3.84 | 5-4 | 0.217 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 5-4 | -0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-4 | 5-4 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-4 | 5-4 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-4 | 5-4 | -0 | Capped at max 12 realistic runs |
| simulation_result | 5-4 | 5-4 | -0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| SF | Jonah Cox | batter / 2B | worse | predicted_BB 1.861 |
| STL | Iván Herrera | batter / DH | deboosted | predicted_HR 1.84 |
| SF | Jung Hoo Lee | batter / RF | worse | predicted_RBI 1.74 |
| STL | Masyn Winn | batter / SS | better | predicted_RBI 1.6 |
| STL | Bryan Torres | batter / LF | better | predicted_AB 1.5 |
| SF | Shay Whitcomb | batter / 3B | worse | predicted_AB 1.407 |
| SF | Grant McCray | batter / LF | deboosted | predicted_AB 1.348 |
| STL | Alec Burleson | batter / 1B | worse | predicted_SO 1.27 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | SF pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | SF |
| info | CURRENT_PITCHER_DUPLICATION | STL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | STL |
| info | CURRENT_FINALIZED_MATCH_BOX | SF model-prediction batting totals differ from final simulation box score (H: current=8, sim=4; 2B: current=1, sim=2; BB: current=3, sim=5; SO: current=7, sim=5). | SF |
| info | CURRENT_PLAYER_MATCH_BOX | SF current finalized hitter lines are model predictions and differ from the simulation box score: Turner Hill: AB current=4 box=3, 2B current=0 box=1, RBI current=1 box=0; Bryce Eldridge: AB current=4 box=3, 2B current=0 box=1, HR current=1 box=0, SO current=1 box=2; Jonah Cox: AB current=3 box=2, H current=1 box=0, R current=1 box=0, BB current=0 box=2; Shay Whitcomb: AB current=3 box=4, H current=1 box=0, RBI current=1 box=0; Grant McCray: AB current=3 box=4, SO current=1 box=0; Christian Koss: AB current=3 box=4, H current=1 box=0, R current=1 box=0, SO current=1 box=0; Drew Gilbert: R current=0 box=1; Drew Cavanaugh: H current=1 box=0, SO current=1 box=0 | SF |
| info | CURRENT_FINALIZED_MATCH_BOX | STL model-prediction batting totals differ from final simulation box score (AB: current=31, sim=36; H: current=7, sim=9; 2B: current=1, sim=2; HR: current=1, sim=3; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=4; SO: current=7, sim=4). | STL |
| info | CURRENT_PLAYER_MATCH_BOX | STL current finalized hitter lines are model predictions and differ from the simulation box score: Bryan Torres: AB current=3 box=4, R current=0 box=1, BB current=0 box=1; Joshua Baez: HR current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=1 box=0; Leonardo Bernal: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=1 box=0; Thomas Saggese: AB current=3 box=4, H current=0 box=2, 2B current=0 box=1, RBI current=0 box=1; Iván Herrera: AB current=4 box=5, H current=1 box=2, HR current=0 box=2, RBI current=1 box=2; Alec Burleson: AB current=4 box=5, RBI current=1 box=0, BB current=1 box=0, SO current=1 box=2; Nolan Gorman: AB current=3 box=4, SO current=1 box=0; Masyn Winn: HR current=0 box=1, RBI current=0 box=2, R current=0 box=1, BB current=0 box=1 | STL |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| TB | Griffin Jax | 0 ER / 15 outs | 1 ER / 15 outs | 1 |
| ATL | Reynaldo López | 3 ER / 15 outs | 6 ER / 14 outs | 3 |
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: Reynaldo López (ATL) posted 11.57 ERA vs projected 5.40 (6 ER in 14 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
Griffin Jax (TB) threw 15 outs, 1 ER = 1.8 ERA against a projected 0 ERA (1.8 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 2 runs on 3 hits and 1 HR, against a projected 4 runs / 8 hits (-2 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Reynaldo López (ATL) threw 14 outs, 6 ER = 11.57 ERA against a projected 5.4 ERA (6.17 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The AWAY 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:
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.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| TB | Griffin Jax (Starter) | 15 / 15 | 1.8 / 0 | 1 / 0 | 2 / 2 | 1 / 0 | 1 / 0 | 1.36 | 2 / 5 | 4.39 | venue away: 3.32 vs 3.42 ERA (ok) · opp run factor 0.99 (strong) · 30 prior appearances this season |
| ATL | Reynaldo López (Starter) | 14 / 15 | 11.57 / 5.4 (+6.17) | 6 / 3 | 7 / 3 | 1 / 1 | 3 / 5 | 1.47 | 5 / 2 | 4.64 | venue home: 3.91 vs 3.7 ERA (ok) · opp run factor 0.99 (average) · 24 prior appearances this season |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Matt Olson (1B) | ATL | 2 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | -1.4 | 0.353 elite | bad day |
| Junior Caminero (3B) | TB | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -1.26 | 0.365 elite | bad day |
| Jonathan Aranda (1B) | TB | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 2 / 1 | -1.11 | 0.349 elite | bad day |
| Drake Baldwin (DH) | ATL | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 2 / 1 | 1 / 1 | 0 / 1 | 0.93 | 0.363 elite | projection too low |
| Chandler Simpson (LF) | TB | 3 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 1 / 0 | 0 / 0 | 0.8 | 0.262 weak | good day |
| Cedric Mullins (CF) | TB | 4 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0.267 weak | — |
| Austin Riley (3B) | ATL | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.299 below average | — |
| Ozzie Albies (2B) | ATL | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | -0.47 | 0.283 weak | — |
| Sean Murphy (C) | ATL | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.264 weak | — |
| Michael Harris II (CF) | ATL | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 1 | -0.45 | 0.34 elite | — |
| Ronald Acuña Jr. (RF) | ATL | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | -0.02 | 0.364 elite | — |
| Liam Hicks (C) | TB | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 0 | 0.318 average | — |
| Yandy Díaz (DH) | TB | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 | 0.356 elite | — |
| Richie Palacios (2B) | TB | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 1 | 0 / 1 | 0 | 0.305 average | — |
| Jorge Mateo (SS) | TB | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 0 | 0.297 below average | — |
| Mauricio Dubón (SS) | ATL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 | 0.304 average | — |
| Mike Yastrzemski (LF) | ATL | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.308 average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.188 | positive favors home; negative favors away |
| Recent form | -0.546 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.001 | positive favors home; negative favors away |
| Composite | -0.211 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.87-3.52 | n/a | Base ML historical model prediction |
| variance_applied | 5-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-3 | 0.577 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run) |
| embedded_savant_run_environment | 4-3 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-3 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-3 | n/a | Capped at max 12 realistic runs |
| simulation_result | 4-3 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.87-3.52 | 5-4 | -0.351 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 4-3 | -0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run) |
| embedded_savant_run_environment | 4-3 | 4-3 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-3 | 4-3 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-3 | 4-3 | -0 | Capped at max 12 realistic runs |
| simulation_result | 4-3 | 4-3 | -0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| TB | Yandy Díaz | batter / DH | better | predicted_AB -1.64 |
| TB | Jorge Mateo | batter / SS | worse | predicted_AB 1.338 |
| TB | Liam Hicks | batter / C | worse | predicted_RBI 1.31 |
| TB | Jonathan Aranda | batter / 1B | worse | predicted_H -1.21 |
| ATL | Michael Harris II | batter / CF | worse | predicted_H -1.16 |
| ATL | Drake Baldwin | batter / DH | worse | predicted_H -1.083 |
| TB | Richie Palacios | batter / 2B | worse | predicted_AB 1.04 |
| ATL | Mauricio Dubón | batter / SS | worse | predicted_H -0.993 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | ATL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | ATL |
| info | CURRENT_PITCHER_DUPLICATION | TB pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | TB |
| info | CURRENT_FINALIZED_MATCH_BOX | ATL model-prediction batting totals differ from final simulation box score (AB: current=33, sim=31; H: current=8, sim=4; 2B: current=1, sim=2; HR: current=1, sim=0; RBI: current=4, sim=3; R: current=4, sim=3; BB: current=3, sim=1). | ATL |
| info | CURRENT_PLAYER_MATCH_BOX | ATL current finalized hitter lines are model predictions and differ from the simulation box score: Drake Baldwin: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Mauricio Dubón: H current=1 box=0, RBI current=1 box=0; Mike Yastrzemski: H current=0 box=1, 2B current=0 box=1; Matt Olson: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Ronald Acuña Jr.: R current=1 box=0, BB current=1 box=0; Michael Harris II: H current=1 box=0, 2B current=1 box=0, R current=0 box=1; Austin Riley: H current=1 box=0; Ozzie Albies: AB current=4 box=3, 2B current=0 box=1, RBI current=0 box=1 | ATL |
| info | CURRENT_FINALIZED_MATCH_BOX | TB model-prediction batting totals differ from final simulation box score (AB: current=33, sim=34; H: current=8, sim=7; HR: current=1, sim=2; BB: current=3, sim=5; SO: current=6, sim=3). | TB |
| info | CURRENT_PLAYER_MATCH_BOX | TB current finalized hitter lines are model predictions and differ from the simulation box score: Liam Hicks: HR current=0 box=1, RBI current=1 box=2, R current=0 box=1, SO current=0 box=1; Jonathan Aranda: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Junior Caminero: HR current=1 box=0, RBI current=1 box=0; Yandy Díaz: H current=1 box=2, HR current=0 box=1, BB current=0 box=1; Victor Mesa Jr.: AB current=4 box=3, BB current=0 box=1, SO current=1 box=0; Chandler Simpson: 2B current=0 box=1, RBI current=0 box=1, R current=0 box=1; Cedric Mullins: BB current=0 box=1, SO current=1 box=0; Richie Palacios: AB current=3 box=4, BB current=1 box=0, SO current=1 box=0 | TB |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| TEX | Cody Bradford | 3 ER / 15 outs | 3 ER / 12 outs | 0 |
| SEA | Kade Anderson | 3 ER / 15 outs | 1 ER / 18 outs | -2 |
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: Kade Anderson (SEA) posted 1.50 ERA vs projected 5.40 (1 ER in 18 outs). Thin prior record (3 prior appearances this season): high projection uncertainty.
What to do: Reduce game confidence for starters the feed has little on (scale by prior appearances); prefer priors and validate any run-param change in shadow.
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
Cody Bradford (TEX) threw 12 outs, 3 ER = 6.75 ERA against a projected 5.4 ERA (1.35 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 6 outs.
The HOME lineup he faced produced 3 runs on 5 hits and 0 HR, against a projected 5 runs / 8 hits (-2 runs vs projection).
Who did the damage to him:
Verdict: offense: the lineup scored well below its projection
HOME pitching
Kade Anderson (SEA) threw 18 outs, 1 ER = 1.5 ERA against a projected 5.4 ERA (-3.9 ERA error) only 3 prior appearances in the covered season - the projection had little of his own record to stand on
Bullpen behind him: 1 ER over 6 outs.
The AWAY lineup he faced produced 2 runs on 7 hits and 2 HR, against a projected 4 runs / 8 hits (-2 runs vs projection).
Who did the damage to him:
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.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| TEX | Cody Bradford (Starter) | 12 / 15 | 6.75 / 5.4 | 3 / 3 | 4 / 4 | 0 / 0 | 2 / 2 | 0.97 | 1 / 4 | 2.45 | venue away: 4.32 vs 4.61 ERA (ok) · opp run factor 0.99 (weak) · 6 prior appearances this season |
| TEX | Tyler Alexander (Middle Reliever (High Leverage)) | 6 / 3 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0.25 | 1 / 0 | 0.87 | |
| SEA | Kade Anderson (Starter) | 18 / 15 | 1.5 / 5.4 (-3.90) | 1 / 3 | 6 / 5 | 1 / 1 | 1 / 3 | 2.64 | 5 / 7 | 3.7 | venue home: 5.91 vs 4.15 ERA (ok) · opp run factor 1 (average) · thin sample: 3 prior appearances this season (high uncertainty) |
| SEA | Andrés Muñoz (Closer) | 3 / 4 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0.42 | 2 / 2 | 1.6 | |
| SEA | Gabe Speier (Middle Reliever (High Leverage)) | 3 / 3 | 9 / 27 (-18.00) | 1 / 3 | 1 / 4 | 1 / 0 | 0 / 1 | 0.36 | 1 / 1 | 0.91 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Dominic Canzone (DH) | SEA | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -1.4 | 0.353 elite | bad day |
| Ezequiel Duran (CF) | TEX | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -1.11 | 0.306 average | no signal |
| Corey Seager (SS) | TEX | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | 1.07 | 0.354 elite | projection too low |
| Wyatt Langford (LF) | TEX | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 3 / 1 | -0.8 | 0.316 average | no signal |
| Logan O'Hoppe (DH) | TEX | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.268 weak | — |
| Brandon Nimmo (RF) | TEX | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.35 elite | — |
| Elias Díaz (C) | TEX | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.275 weak | — |
| Cody Freeman (3B) | TEX | 2 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0.47 | 0.23 weak | — |
| Cal Raleigh (C) | SEA | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 1 / 1 | -0.47 | 0.315 average | — |
| J.P. Crawford (SS) | SEA | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | -0.47 | 0.324 above average | — |
| Jake Burger (1B) | TEX | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 1 / 1 | 1 / 0 | 1 / 1 | 0.33 | 0.316 average | — |
| Justin Foscue (2B) | TEX | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 0 / 1 | 0.33 | 0.333 above average | — |
| Cole Young (2B) | SEA | 3 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 0.31 | 0.315 average | — |
| Randy Arozarena (LF) | SEA | 4 / 4 | 1 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | 0 | 0.348 elite | — |
| Taylor Ward (RF) | SEA | 2 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 1 | 0 / 1 | 0 | 0.333 above average | — |
| Julio Rodríguez (CF) | SEA | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | 0 | 0.334 above average | — |
| Josh Naylor (1B) | SEA | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 | 0.315 average | — |
| Weston Wilson (3B) | SEA | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.256 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.429 | positive favors home; negative favors away |
| Recent form | -0.866 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.01 | positive favors home; negative favors away |
| Composite | -0.835 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.9-4.49 | n/a | Base ML historical model prediction |
| variance_applied | 4-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 6-4 | 0.549 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by winner_starter_is_below_average, matchup_recency_guardrail) |
| embedded_savant_run_environment | 6-4 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-4 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-4 | n/a | Capped at max 12 realistic runs |
| simulation_result | 6-4 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 3.9-4.49 | 4-4 | 0.59 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-4 | 6-4 | 2 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by winner_starter_is_below_average, matchup_recency_guardrail) |
| embedded_savant_run_environment | 6-4 | 6-4 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-4 | 6-4 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-4 | 6-4 | -0 | Capped at max 12 realistic runs |
| simulation_result | 6-4 | 6-4 | -0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| TEX | Ezequiel Duran | batter / CF | worse | predicted_SO 3.067 |
| TEX | Justin Foscue | batter / 2B | worse | predicted_AB 2.5 |
| TEX | Brandon Nimmo | batter / RF | better | predicted_RBI 2.49 |
| TEX | Logan O'Hoppe | batter / DH | worse | predicted_SO 2.165 |
| SEA | Weston Wilson | batter / 3B | better | predicted_H 1.87 |
| SEA | Cal Raleigh | batter / C | worse | predicted_SO 1.697 |
| TEX | Corey Seager | batter / SS | worse | predicted_BB 1.488 |
| SEA | Dominic Canzone | batter / DH | worse | predicted_AB -1.46 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | SEA pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | SEA |
| info | CURRENT_PITCHER_DUPLICATION | TEX pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | TEX |
| info | CURRENT_FINALIZED_MATCH_BOX | SEA model-prediction batting totals differ from final simulation box score (H: current=8, sim=6; 2B: current=1, sim=0; HR: current=1, sim=2; R: current=5, sim=4; SO: current=8, sim=11; HBP: current=0, sim=1). | SEA |
| info | CURRENT_PLAYER_MATCH_BOX | SEA current finalized hitter lines are model predictions and differ from the simulation box score: Cal Raleigh: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Dominic Canzone: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Randy Arozarena: AB current=4 box=3, 2B current=1 box=0, RBI current=1 box=2, HBP current=0 box=1; Taylor Ward: AB current=3 box=4, R current=0 box=1, BB current=1 box=0, SO current=1 box=0; J.P. Crawford: H current=1 box=0; Julio Rodríguez: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=1 box=2; Josh Naylor: H current=1 box=2, HR current=0 box=1, RBI current=0 box=1, R current=0 box=1; Cole Young: AB current=3 box=4, H current=1 box=0, R current=1 box=0 | SEA |
| info | CURRENT_FINALIZED_MATCH_BOX | TEX model pitcher projections differ from final simulation pitching box score (HR: current=1, sim=2). | TEX |
| info | CURRENT_FINALIZED_MATCH_BOX | TEX model-prediction batting totals differ from final simulation box score (AB: current=31, sim=36; H: current=8, sim=9; 3B: current=0, sim=1; RBI: current=4, sim=6; R: current=4, sim=6; BB: current=3, sim=5; SO: current=8, sim=13). | TEX |
| info | CURRENT_PLAYER_MATCH_BOX | TEX current finalized hitter lines are model predictions and differ from the simulation box score: Ezequiel Duran: AB current=4 box=5, 2B current=1 box=0, RBI current=1 box=0, BB current=1 box=0; Corey Seager: AB current=4 box=3, RBI current=1 box=0, BB current=1 box=2; Jake Burger: AB current=3 box=4, HR current=1 box=0, SO current=1 box=2; Logan O'Hoppe: AB current=3 box=4, 2B current=0 box=1, SO current=1 box=3; Justin Foscue: AB current=3 box=5, R current=0 box=1; Wyatt Langford: AB current=4 box=5, 3B current=0 box=1, R current=1 box=0, BB current=1 box=0; Brandon Nimmo: AB current=4 box=3, H current=1 box=2, HR current=0 box=1, RBI current=0 box=3; Elias Díaz: AB current=3 box=4, H current=1 box=0, SO current=1 box=0 | TEX |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| TOR | Braydon Fisher | 2 ER / 15 outs | 0 ER / 3 outs | -2 |
| OAK | Brady Basso | 3 ER / 13 outs | 0 ER / 12 outs | -3 |
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 Basso (OAK) posted 0.00 ERA vs projected 6.23 (0 ER in 12 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
Braydon Fisher (TOR) threw 3 outs, 0 ER = 0 ERA against a projected 3.6 ERA (-3.6 ERA error)
Bullpen behind him: 0 ER over 6 outs.
The HOME lineup he faced produced 2 runs on 4 hits and 1 HR, against a projected 4 runs / 8 hits (-2 runs vs projection).
Who did the damage to him:
Verdict: offense: the lineup scored well below its projection
HOME pitching
Brady Basso (OAK) threw 12 outs, 0 ER = 0 ERA against a projected 6.23 ERA (-6.23 ERA error)
Bullpen behind him: 0 ER over 15 outs.
The AWAY lineup he faced produced 0 runs on 5 hits and 0 HR, against a projected 4 runs / 10 hits (-4 runs vs projection).
No individual hitter beat his projection by a meaningful margin.
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.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| TOR | Braydon Fisher (Starter) | 3 / 15 | 0 / 3.6 (-3.60) | 0 / 2 | 0 / 6 | 0 / 0 | 0 / 0 | 3.23 | 1 / 5 | 2.94 | venue away: 0 vs 1.69 ERA (ok) · opp run factor 0.99 (weak) · 69 prior appearances this season |
| TOR | Louis Varland (Closer) | 3 / 5 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0.33 | 2 / 0 | 1.01 | |
| TOR | Tyler Rogers (Setup Man) | 3 / 3 | 0 / 9 (-9.00) | 0 / 1 | 0 / 2 | 0 / 0 | 1 / 1 | 0.28 | 0 / 1 | 0.54 | |
| OAK | Brady Basso (Starter) | 12 / 13 | 0 / 6.23 (-6.23) | 0 / 3 | 3 / 5 | 0 / 1 | 2 / 1 | 0.49 | 4 / 2 | 3.43 | opp run factor 0.98 (weak) · 22 prior appearances this season |
| OAK | Luis Medina (Middle Reliever (High Leverage)) | 3 / 4 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0.63 | 2 / 1 | 1.92 | |
| OAK | Scott Blewett (Middle Reliever (High Leverage)) | 6 / 4 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 0 | 1 / 0 | 0.49 | 1 / 1 | 2.03 | |
| OAK | Elvis Alvarado (Closer) | 3 / 3 | 0 / 27 (-27.00) | 0 / 3 | 1 / 2 | 0 / 1 | 0 / 1 | 0.5 | 2 / 0 | 1.15 | |
| OAK | Hogan Harris (Setup Man) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0.55 | 0 / 1 | 1.39 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Kazuma Okamoto (3B) | TOR | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 3 / 1 | -1.4 | 0.324 above average | bad day |
| Zack Gelof (3B) | OAK | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 2 / 1 | -1.4 | 0.311 average | no signal |
| Carlos Cortes (LF) | OAK | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 0 / 1 | -1.11 | 0.307 average | no signal |
| Brandon Valenzuela (C) | TOR | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 2 / 1 | -0.8 | 0.312 average | no signal |
| Max Muncy (DH) | OAK | 2 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 0 / 1 | 0.8 | 0.288 below average | good day |
| Lawrence Butler (RF) | OAK | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 0 / 1 | -0.8 | 0.318 average | no signal |
| Vladimir Guerrero Jr. (1B) | TOR | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 0 | -0.78 | 0.333 above average | bad day |
| Myles Straw (CF) | TOR | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | -0.47 | 0.298 below average | — |
| Brian Serven (C) | OAK | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -0.47 | 0.302 below average | — |
| Alika Williams (SS) | OAK | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.239 weak | — |
| Henry Bolte (CF) | OAK | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 1 | 0 / 1 | 2 / 1 | 0.29 | 0.315 average | — |
| Brett Bateman (RF) | TOR | 4 / 4 | 1 / 2 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | -0.16 | 0.301 below average | — |
| Ernie Clement (2B) | TOR | 3 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 0.02 | 0.263 weak | — |
| Charles McAdoo (LF) | TOR | 2 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.275 weak | — |
| Alejandro Kirk (DH) | TOR | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 1 / 1 | 0 | 0.302 below average | — |
| Andrés Giménez (SS) | TOR | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.274 weak | — |
| Tommy White (1B) | OAK | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0 | 0.298 below average | — |
| Donovan Walton (2B) | OAK | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 0 | 0 | 0.34 elite | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.945 | positive favors home; negative favors away |
| Recent form | -0.69 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.012 | positive favors home; negative favors away |
| Composite | -0.847 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 5.44-4.78 | n/a | Base ML historical model prediction |
| variance_applied | 5-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 6-5 | 0.536 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 6-5 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-5 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-5 | n/a | Capped at max 12 realistic runs |
| simulation_result | 6-5 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 5.44-4.78 | 5-5 | -0.658 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-5 | 6-5 | 1 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 6-5 | 6-5 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-5 | 6-5 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-5 | 6-5 | -0 | Capped at max 12 realistic runs |
| simulation_result | 6-5 | 6-5 | -0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| TOR | Andrés Giménez | batter / SS | better | predicted_RBI 2.62 |
| TOR | Kazuma Okamoto | batter / 3B | worse | predicted_SO 1.791 |
| OAK | Henry Bolte | batter / CF | better | predicted_RBI 1.677 |
| OAK | Carlos Cortes | batter / LF | boosted | predicted_RBI 1.626 |
| TOR | Charles McAdoo | batter / LF | better | predicted_RBI 1.615 |
| TOR | Vladimir Guerrero Jr. | batter / 1B | worse | predicted_AB -1.56 |
| TOR | Myles Straw | batter / CF | deboosted | predicted_AB 1.5 |
| OAK | Donovan Walton | batter / 2B | worse | predicted_AB 1.254 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | OAK pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | OAK |
| info | CURRENT_PITCHER_DUPLICATION | TOR pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | TOR |
| info | CURRENT_FINALIZED_MATCH_BOX | OAK model-prediction batting totals differ from final simulation box score (AB: current=33, sim=37; H: current=8, sim=10; 2B: current=2, sim=1; 3B: current=0, sim=2; HR: current=1, sim=0; R: current=4, sim=5; BB: current=4, sim=2; SO: current=8, sim=6). | OAK |
| info | CURRENT_PLAYER_MATCH_BOX | OAK current finalized hitter lines are model predictions and differ from the simulation box score: Henry Bolte: AB current=4 box=5, H current=1 box=2, RBI current=0 box=2, BB current=1 box=0; Carlos Cortes: H current=1 box=2, 2B current=1 box=0, 3B current=0 box=1, RBI current=1 box=2; Tommy White: RBI current=0 box=1, R current=0 box=1, SO current=1 box=0; Max Muncy: RBI current=1 box=0, SO current=1 box=0; Brian Serven: RBI current=1 box=0, BB current=0 box=1, SO current=1 box=0; Alika Williams: AB current=3 box=4, SO current=1 box=0; Donovan Walton: AB current=3 box=4, R current=1 box=0, BB current=1 box=0, SO current=0 box=1; Zack Gelof: AB current=4 box=5, H current=1 box=2, 3B current=0 box=1, HR current=1 box=0 | OAK |
| info | CURRENT_FINALIZED_MATCH_BOX | TOR model-prediction batting totals differ from final simulation box score (AB: current=33, sim=34; H: current=10, sim=7; HR: current=1, sim=2; RBI: current=5, sim=6; R: current=4, sim=6; BB: current=3, sim=2; SO: current=6, sim=5). | TOR |
| info | CURRENT_PLAYER_MATCH_BOX | TOR current finalized hitter lines are model predictions and differ from the simulation box score: Charles McAdoo: HR current=0 box=1, RBI current=1 box=2, R current=0 box=1, SO current=1 box=0; Brett Bateman: RBI current=0 box=1, SO current=1 box=0; Alejandro Kirk: RBI current=1 box=0, R current=0 box=1, BB current=1 box=0, SO current=1 box=0; Kazuma Okamoto: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Brandon Valenzuela: AB current=3 box=4, 2B current=0 box=1, R current=0 box=1, BB current=1 box=0; Ernie Clement: H current=1 box=0, 2B current=1 box=0, R current=1 box=0; Andrés Giménez: AB current=3 box=4, HR current=0 box=1, RBI current=1 box=3, R current=0 box=1; Vladimir Guerrero Jr.: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0 | TOR |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| WAS | Jackson Kent | 5 ER / 14 outs | 5 ER / 9 outs | 0 |
| SD | Walker Buehler | 1 ER / 16 outs | 2 ER / 7 outs | 1 |
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: Walker Buehler (SD) posted 7.71 ERA vs projected 1.69 (2 ER in 7 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
Jackson Kent (WAS) threw 9 outs, 5 ER = 15 ERA against a projected 9.64 ERA (5.36 ERA error) only 5 prior appearances in the covered season - the projection had little of his own record to stand on
Bullpen behind him: 2 ER over 6 outs.
The HOME lineup he faced produced 9 runs on 16 hits and 2 HR, against a projected 4 runs / 7 hits (5 runs vs projection).
Who did the damage to him:
Verdict: both: the starter was hit hard AND the lineup underproduced
HOME pitching
Walker Buehler (SD) threw 7 outs, 2 ER = 7.71 ERA against a projected 1.69 ERA (6.02 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The AWAY lineup he faced produced 2 runs on 4 hits and 1 HR, against a projected 4 runs / 8 hits (-2 runs vs projection).
Who did the damage to him:
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.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| WAS | Jackson Kent (Starter) | 9 / 14 | 15 / 9.64 (+5.36) | 5 / 5 | 8 / 8 | 0 / 0 | 1 / 2 | 3.91 | 2 / 4 | 4.34 | venue away: 7.42 vs 3.27 ERA (ok) · opp run factor 1 (average) · 5 prior appearances this season |
| WAS | Brad Lord (Middle Reliever (High Leverage)) | 6 / 4 | 9 / 0 (+9.00) | 2 / 0 | 4 / 0 | 1 / 0 | 0 / 2 | 0.77 | 0 / 3 | 1.68 | |
| SD | Walker Buehler (Starter) | 7 / 16 | 7.71 / 1.69 (+6.02) | 2 / 1 | 3 / 2 | 1 / 0 | 2 / 2 | 1.57 | 4 / 9 | 4.52 | venue home: 4 vs 5.23 ERA (ok) · opp run factor 1.04 (strong) · 28 prior appearances this season |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Jackson Merrill (CF) | SD | 5 / 4 | 4 / 1 | 0 / 0 | 1 / 0 | 2 / 0 | 6 / 1 | 2 / 1 | 0 / 0 | 0 / 1 | 3.89 | 0.341 elite | projection too low |
| Manny Machado (3B) | SD | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 1 | 2 / 1 | -1.4 | 0.338 above average | bad day |
| Ty France (1B) | SD | 5 / 4 | 3 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 2 / 0 | 0 / 0 | 1 / 1 | 1.25 | 0.334 above average | projection too low |
| James Wood (DH) | WAS | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 1 | -0.93 | 0.416 elite | bad day |
| CJ Abrams (2B) | WAS | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 3 / 1 | -0.8 | 0.328 above average | bad day |
| Samad Taylor (LF) | SD | 4 / 3 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 1 / 1 | 0.78 | 0.308 average | no signal |
| Keibert Ruiz (C) | WAS | 4 / 3 | 1 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0.62 | 0.285 below average | good day |
| Andrés Chaparro (3B) | WAS | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 2 / 1 | -0.47 | 0.349 elite | — |
| Daylen Lile (LF) | WAS | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -0.47 | 0.327 above average | — |
| Yohandy Morales (1B) | WAS | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.372 elite | — |
| Austin Hays (DH) | SD | 2 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.273 weak | — |
| Xander Bogaerts (SS) | SD | 4 / 4 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 0 / 0 | 0.47 | 0.321 above average | — |
| Dylan Crews (RF) | WAS | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 1 / 0 | 1 / 1 | 0.33 | 0.312 average | — |
| Fernando Tatis Jr. (2B) | SD | 5 / 4 | 3 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | 0.3 | 0.375 elite | — |
| Nasim Nuñez (SS) | WAS | 1 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 0 / 1 | 0 | 0.266 weak | — |
| Jacob Young (CF) | WAS | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.317 average | — |
| Jase Bowen (RF) | SD | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 | 0.27 weak | — |
| Luis Campusano (C) | SD | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 | 0.343 elite | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.194 | positive favors home; negative favors away |
| Recent form | 0.374 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.045 | positive favors home; negative favors away |
| Composite | 0.281 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.92-4.56 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 0.524 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-5 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-5 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-5 | n/a | Capped at max 12 realistic runs |
| simulation_result | 4-5 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 3.92-4.56 | 4-5 | 0.366 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 4-5 | 0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-5 | 4-5 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-5 | 4-5 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-5 | 4-5 | 0 | Capped at max 12 realistic runs |
| simulation_result | 4-5 | 4-5 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| SD | Jase Bowen | batter / RF | better | predicted_RBI 3.792 |
| WAS | Jackson Kent | pitcher / Starter | neutral | predicted_SO 2 |
| WAS | Jacob Young | batter / CF | boosted | predicted_RBI 1.86 |
| SD | Samad Taylor | batter / LF | worse | predicted_H 1.78 |
| WAS | Dylan Crews | batter / RF | worse | predicted_AB -1.65 |
| WAS | Keibert Ruiz | batter / C | better | predicted_SO 1.604 |
| WAS | Andrés Chaparro | batter / 3B | worse | predicted_AB 1.5 |
| WAS | Yohandy Morales | batter / 1B | worse | predicted_AB 1.333 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| critical | RUNS_MATCH_FINAL | simulation:SD runs mismatch: batting R=5, final=5, opponent pitching R=4. | SD |
| info | CURRENT_PITCHER_DUPLICATION | SD pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | SD |
| info | CURRENT_PITCHER_DUPLICATION | WAS pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | WAS |
| info | CURRENT_FINALIZED_MATCH_BOX | SD model-prediction batting totals differ from final simulation box score (H: current=7, sim=8; 2B: current=1, sim=2; 3B: current=0, sim=1; HR: current=1, sim=0; RBI: current=4, sim=5; R: current=4, sim=5; SO: current=8, sim=9). | SD |
| info | CURRENT_PLAYER_MATCH_BOX | SD current finalized hitter lines are model predictions and differ from the simulation box score: Fernando Tatis Jr.: 2B current=1 box=0, RBI current=1 box=0, BB current=1 box=0, SO current=1 box=2; Jackson Merrill: 2B current=0 box=1, RBI current=1 box=0, R current=1 box=0, SO current=1 box=0; Ty France: RBI current=1 box=0, R current=0 box=1; Austin Hays: AB current=3 box=4, H current=1 box=0; Manny Machado: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Jase Bowen: H current=0 box=2, 2B current=0 box=1, 3B current=0 box=1, RBI current=0 box=4; Xander Bogaerts: BB current=1 box=0, SO current=0 box=1; Luis Campusano: RBI current=0 box=1, R current=0 box=1 | SD |
| info | CURRENT_FINALIZED_MATCH_BOX | WAS model pitcher projections differ from final simulation pitching box score (R: current=5, sim=4; ER: current=5, sim=4). | WAS |
| info | CURRENT_FINALIZED_MATCH_BOX | WAS model-prediction batting totals differ from final simulation box score (AB: current=33, sim=35; 2B: current=1, sim=2; BB: current=3, sim=2; SO: current=8, sim=13). | WAS |
| info | CURRENT_PLAYER_MATCH_BOX | WAS current finalized hitter lines are model predictions and differ from the simulation box score: CJ Abrams: AB current=4 box=3, 2B current=0 box=1, RBI current=1 box=0, SO current=1 box=2; James Wood: AB current=4 box=5, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Andrés Chaparro: H current=1 box=0, RBI current=1 box=0; Daylen Lile: H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Nasim Nuñez: AB current=3 box=4, H current=0 box=2, RBI current=0 box=1, R current=0 box=1; Dylan Crews: AB current=4 box=3, H current=1 box=0, R current=1 box=0, BB current=0 box=1; Keibert Ruiz: AB current=3 box=4, H current=1 box=2, 2B current=1 box=0, HR current=0 box=1; Jacob Young: AB current=3 box=4, 2B current=0 box=1, RBI current=0 box=2, R current=0 box=1 | WAS |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
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.
Compared against packet 20260908. 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.
| Metric | Prior | Current | Δ | Result |
|---|---|---|---|---|
| brier_score | 0.2542 | 0.2444 | -0.009719 | improved |
| accuracy | 0.55 | 0.5833 | +0.0333 | improved |
| team_run_mae | 2.5792 | 2.55 | -0.0292 | improved |
| total_run_mae | 3.8917 | 4 | +0.1083 | regressed |
| calibration_error | 0.0641 | 0.069 | +0.0049 | regressed |
| starter_er_mae | 2.0207 | 1.9879 | -0.0328 | improved |
| starter_outs_mae | 3.0083 | 3.1498 | +0.1415 | regressed |