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_20260916.json | 378818 |
| forensic deep audit | loaded | probability, provenance, starter and decision contracts | /app/output/reports/PREDICTION_SYSTEM_DEEP_AUDIT_20260916.json | 240608 |
| continuous learning | loaded | pipeline-stage quality, calibration, probability lineage, score distribution, and official starter comparisons | /app/output/learning/continuous_learning_daily_20260916.json | 2575015 |
| detailed report | loaded | full game and simulation rendering | /app/output/reports/detailed_20260916.html | 358030 |
| ultra detailed player audit | loaded | player-level prediction trace | /app/output/reports/20260916_ultra_detailed_player_audit.html | 33728355 |
| structural audit | loaded | all invariant findings | /app/output/reports/audit_report_20260916.html | 1889063 |
| integrity revision audit | missing | post-Luna remediation proof for immutable revision artifacts | /app/output/reports/audit_report_20260916_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 |
|---|---|---|---|---|
| HIGH | pipeline_stages | An intermediate stage materially degraded winner direction historical_ml → variance_applied changed winner accuracy by -0.2000 (-3 hits) | BOS@TEX, KC@HOU, SEA@LAA | Do thisList the exact games whose winner flipped at this stage, and keep both the before-stage and after-stage picks in the trace. Don't concludeEven if a later stage recovers the pick, this unstable step is still a risk; do not treat it as harmless. |
| HIGH | calibration | Published confidence buckets were poorly aligned on this slate weighted absolute calibration error 0.1661 across 15 games | ATL@CHC, BAL@NYM, BOS@TEX, CHW@CLE, DET@TOR, KC@HOU, LAD@CIN, MIA@ARI, MIL@PIT, NYY@MIN, OAK@TB, PHI@WAS, SD@COL, SEA@LAA, SF@STL | Do thisWatch the same confidence buckets over the full rolling window before changing any calibration weight. Don't concludeA single slate has far too few games to establish a stable calibration curve. |
| HIGH | model_validation | Validated run models explain very little holdout variance home/away/total R² = 0.0021/0.0200/0.0035 | ATL@CHC, BAL@NYM, BOS@TEX, CHW@CLE, DET@TOR, KC@HOU, LAD@CIN, MIA@ARI, MIL@PIT, NYY@MIN, OAK@TB, PHI@WAS, SD@COL, SEA@LAA, SF@STL | 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. |
| MEDIUM | calibration | Most high-raw picks lost before/after shrinkage 1/3 games with raw pick probability ≥0.65 won | LAD@CIN, NYY@MIN, OAK@TB | Do thisTrack how often high-raw-probability picks lose across multiple slates, and keep the raw to calibrated to published lineage. Don't concludeThis one slate is not enough to justify a new per-bucket shrinkage rule. |
| INFO | coverage | Every settled game received structural QA 15/15 games structurally audited | ATL@CHC, BAL@NYM, BOS@TEX, CHW@CLE, DET@TOR, KC@HOU, LAD@CIN, MIA@ARI, MIL@PIT, NYY@MIN, OAK@TB, PHI@WAS, SD@COL, SEA@LAA, SF@STL | 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 | probability_lineage | Material calibrated-to-published movements have recorded lineage 9 material movement(s), all explained by named score-coherence and/or recency transformations | ATL@CHC, BAL@NYM, CHW@CLE, DET@TOR, LAD@CIN, MIL@PIT, NYY@MIN, PHI@WAS, SD@COL | Do thisKeep showing every probability layer and the named transformation between them. Don't concludeA published probability above the calibrated one is not a governor bypass when a recorded transformation explains it. |
| INFO | simulation | Simulation produced no winner-direction intervention on this slate flip candidates 0; published flips 0 | ATL@CHC, BAL@NYM, BOS@TEX, CHW@CLE, DET@TOR, KC@HOU, LAD@CIN, MIA@ARI, MIL@PIT, NYY@MIN, OAK@TB, PHI@WAS, SD@COL, SEA@LAA, SF@STL | 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. |
| single_slate_calibration_instability | 3 consecutive · 7 in window | confidence.empirical_max_weight, confidence.base_cap, confidence.moderate_cap | increase empirical shrinkage | single_slate_calibration_instability has persisted 3 consecutive slates; this is no longer single-slate noise. Treat it as an actionable pattern and propose a bounded shadow experiment against a target lever. |
| 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 | 1 | 1/11 | yes | param |
| pipeline_winner_instability | 1 | 2/11 | yes | code/diagnostic |
| score_margin_compression | 0 | 1/11 | no | param |
| simulation_inert_on_slate | 11 | 11/11 | yes | code/diagnostic |
| single_slate_calibration_instability | 3 | 7/11 | yes | param |
| weak_run_model_signal | 11 | 11/11 | yes | code/diagnostic |
| Metric | Direction | Series (old → new) |
|---|---|---|
| winner_accuracy | improving | [0.6, 0.5455, 0.7333, 0.6667, 0.6, 0.6667, 0.5333, 0.6, 0.7, 0.4, 0.6667] |
| weighted_calibration_error | improving | [0.0937, 0.2611, 0.1825, 0.1069, 0.1171, 0.2091, 0.1711, 0.0827, 0.2812, 0.2795, 0.1661] |
| margin_bias | improving | [-1.467, -0.182, -0.867, -2.133, -1.0, -2.933, -2.667, -1.8, -0.4, -1.667, -1.133] |
| team_run_error_on_losses | regressing | [5.333, 3.8, 6.75, 5.6, 6.5, 5.0, 6.143, 5.0, 6.333, 5.556, 6.4] |
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 | 9/15 | 60% | 1.843 | 1.736 | 3.059 |
| variance_applied | 6/15 | 40% | 1.867 | 1.867 | 2.933 |
| enhanced_prediction | 11/15 | 73.3% | 1.933 | 2 | 3.2 |
| embedded_savant_run_environment | 11/15 | 73.3% | 2.033 | 2.2 | 3.4 |
| fundamental_edge_target_review | 10/15 | 66.7% | 2.1 | 2.2 | 3.533 |
| capped_target | 10/15 | 66.7% | 2.1 | 2.2 | 3.533 |
| simulation_result | 10/15 | 66.7% | 2.1 | 2.2 | 3.533 |
| published_final | 10/15 | 66.7% | 2.1 | 2.2 | 3.533 |
| Transition | Δ accuracy | Δ hits | Δ team-run MAE | Δ margin MAE | Games whose winner/tie changed |
|---|---|---|---|---|---|
| historical_ml → variance_applied | -0.2 | -3 | 0.0239 | -0.1261 | BOS@TEX: TEX → TIE; KC@HOU: KC → TIE; OAK@TB: OAK → TIE; SEA@LAA: SEA → TIE; SF@STL: STL → TIE |
| variance_applied → enhanced_prediction | 0.3333 | 5 | 0.0666 | 0.2667 | BOS@TEX: TIE → TEX; KC@HOU: TIE → KC; OAK@TB: TIE → TB; SEA@LAA: TIE → SEA; SF@STL: TIE → SF |
| enhanced_prediction → embedded_savant_run_environment | 0 | 0 | 0.1 | 0.2 | |
| embedded_savant_run_environment → fundamental_edge_target_review | -0.0666 | -1 | 0.0667 | 0.1333 | BOS@TEX: TEX → BOS |
| 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 |
|---|---|---|---|---|---|---|---|
| ATL@CHC | hit | 0.6244 | 0.5695 | 0.5695 | 0.5695 | 0.53 | score coherence followed by matchup-recency guardrail |
| BAL@NYM | miss | 0.6169 | 0.595 | 0.595 | 0.5863 | 0.53 | score coherence followed by matchup-recency guardrail |
| BOS@TEX | miss | 0.5432 | 0.5328 | 0.5328 | 0.5328 | 0.5279 | published probability matches the calibrated/governed value |
| CHW@CLE | hit | 0.6098 | 0.5787 | 0.5787 | 0.5782 | 0.5565 | score coherence followed by matchup-recency guardrail |
| DET@TOR | miss | 0.6469 | 0.6531 | 0.6531 | 0.6528 | 0.58 | score coherence followed by matchup-recency guardrail |
| KC@HOU | hit | 0.5 | 0.5076 | 0.5076 | 0.5076 | 0.5055 | published probability matches the calibrated/governed value |
| LAD@CIN | miss | 0.7529 | 0.7429 | 0.7429 | 0.7429 | 0.58 | score coherence followed by matchup-recency guardrail |
| MIA@ARI | hit | 0.5818 | 0.5642 | 0.5642 | 0.5642 | 0.5545 | score coherence followed by matchup-recency guardrail |
| MIL@PIT | hit | 0.6029 | 0.6672 | 0.6672 | 0.6598 | 0.56 | score coherence followed by matchup-recency guardrail |
| NYY@MIN | miss | 0.6828 | 0.6906 | 0.6906 | 0.6715 | 0.58 | score coherence followed by matchup-recency guardrail |
| OAK@TB | hit | 0.6849 | 0.7669 | 0.7669 | 0.7669 | 0.7669 | published probability matches the calibrated/governed value |
| PHI@WAS | hit | 0.5885 | 0.5506 | 0.5506 | 0.5506 | 0.5098 | score coherence followed by matchup-recency guardrail |
| SD@COL | hit | 0.6166 | 0.6367 | 0.6367 | 0.6367 | 0.53 | score coherence followed by matchup-recency guardrail |
| SEA@LAA | hit | 0.5039 | 0.5076 | 0.5076 | 0.5076 | 0.5052 | published probability matches the calibrated/governed value |
| SF@STL | hit | 0.5 | 0.5274 | 0.5274 | 0.5274 | 0.5136 | no recorded transformation explains the publication delta |
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 | 4 | 5 | 2 | 19 | 2.09 | -0.23 |
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.
3 of 15 games: the blend picked one side and the published number picked the other. The published probability is reconciled to the integer score after the blend runs, so a blend that disagrees with the score is overwritten before publication. On those games the trained classifier changes nothing a reader sees, even where the artifact records winner_changed.
| Game | Trained p(home) | Blended p(home) | Blend favoured | Published p(home) | Published side | Artifact says winner changed | Outcome |
|---|---|---|---|---|---|---|---|
| BOS@TEX | 0.563 | 0.543 | home | 0.472 | away | no | miss |
| KC@HOU | 0.529 | 0.51 | home | 0.494 | away | yes | hit |
| SF@STL | 0.6 | 0.535 | home | 0.486 | away | yes | hit |
Blend side survived on 12 of 15 games; the blend flagged a winner change on 2.
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.11 over 12 slates (sign shared by 0.67 of them, z = -0.23).
starters beat their projection: the run model credits opposing offenses with more than they produced.
Hold: no change: this bias is not separable from slate-to-slate noise yet
8 of 12 slates share the sign, mean -0.11 +/- 0.47 standard error: not separable from noise
lineup runs actual minus projected
Mean -0.19 over 12 slates (sign shared by 0.67 of them, z = -1.01).
lineups scored below projection: the run environment is set too high.
Hold: no change: this bias is not separable from slate-to-slate noise yet
8 of 12 slates share the sign, mean -0.19 +/- 0.19 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 |
|---|---|---|---|---|---|---|
| 20260915 | 15 | 0.400 | -1.58 | -0.70 | 1 | 12 |
| 20260914 | 10 | 0.700 | -0.48 | -0.20 | 2 | 6 |
| 20260913 | 15 | 0.600 | -0.07 | 0.03 | 2 | 8 |
| 20260912 | 15 | 0.533 | 1.35 | 0.57 | 6 | 7 |
| 20260911 | 15 | 0.667 | 0.99 | 0.00 | 4 | 9 |
| 20260910 | 5 | 0.600 | -3.19 | -1.70 | 8 | |
| 20260909 | 15 | 0.667 | 3.36 | 1.07 | 8 | 7 |
| 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 |
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 |
|---|---|---|---|
| ATL@CHC | 2 | 4 | -2 |
| BAL@NYM | 2 | 6 | -4 |
| BOS@TEX | 1 | 4 | -3 |
| CHW@CLE | 1 | 3 | -2 |
| DET@TOR | 3 | 4 | -1 |
| KC@HOU | 1 | 3 | -2 |
| LAD@CIN | 4 | 4 | 0 |
| MIA@ARI | 2 | 1 | 1 |
| MIL@PIT | 2 | 1 | 1 |
| NYY@MIN | 3 | 1 | 2 |
| OAK@TB | 4 | 1 | 3 |
| PHI@WAS | 1 | 3 | -2 |
| SD@COL | 2 | 6 | -4 |
| SEA@LAA | 1 | 5 | -4 |
| SF@STL | 1 | 1 | 0 |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| ATL | JR Ritchie | 4 ER / 13 outs | 6 ER / 14 outs | 2 |
| CHC | Shota Imanaga | 5 ER / 16 outs | 1 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: Shota Imanaga (CHC) posted 1.50 ERA vs projected 8.44 (1 ER in 18 outs); he is materially worse pitching home (4.15 ERA there vs 3.45 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
JR Ritchie (ATL) threw 14 outs, 6 ER = 11.57 ERA against a projected 8.31 ERA (3.26 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 7 runs on 11 hits and 3 HR, against a projected 5 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
HOME pitching
Shota Imanaga (CHC) threw 18 outs, 1 ER = 1.5 ERA against a projected 8.44 ERA (-6.94 ERA error)
Bullpen behind him: 0 ER over 3 outs.
The AWAY lineup he faced produced 4 runs on 8 hits and 0 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
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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| ATL | JR Ritchie (Starter) | 14 / 13 | 11.57 / 8.31 (+3.26) | 6 / 4 | 7 / 3 | 2 / 1 | 2 / 1 | 2.82 | 5 / 6 | 4.52 | venue away: 6 vs 3.29 ERA (worse here) · opp run factor 0.95 (strong) · 14 prior appearances this season |
| CHC | Shota Imanaga (Starter) | 18 / 16 | 1.5 / 8.44 (-6.94) | 1 / 5 | 4 / 4 | 0 / 2 | 0 / 0 | 1.77 | 8 / 4 | 4.99 | venue home: 4.15 vs 3.45 ERA (worse here) · opp run factor 1.1 (strong) · 29 prior appearances this season |
| CHC | Ryan Zeferjahn (Setup Man) | 3 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0.72 | 1 / 1 | 1.23 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Pete Crow-Armstrong (CF) | CHC | 4 / 4 | 3 / 1 | 0 / 0 | 1 / 0 | 2 / 1 | 3 / 1 | 3 / 1 | 1 / 1 | 1 / 1 | 2.49 | 0.378 elite | projection too low |
| Alex Bregman (3B) | CHC | 4 / 4 | 3 / 1 | 1 / 1 | 1 / 0 | 1 / 0 | 4 / 1 | 1 / 1 | 0 / 1 | 0 / 0 | 2.16 | 0.321 above average | projection too low |
| Seiya Suzuki (RF) | CHC | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | -1.73 | 0.339 elite | bad day |
| Mauricio Dubón (LF) | ATL | 4 / 4 | 2 / 1 | 1 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1.4 | 0.305 average | no signal |
| Matt Olson (1B) | ATL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -1.26 | 0.352 elite | bad day |
| Drake Baldwin (DH) | ATL | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -1.11 | 0.364 elite | bad day |
| Michael Conforto (DH) | CHC | 3 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | 0.8 | 0.328 above average | projection too low |
| Sean Murphy (C) | ATL | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.256 weak | — |
| Michael Busch (1B) | CHC | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 2 / 1 | -0.47 | 0.33 above average | — |
| Nico Hoerner (SS) | CHC | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | -0.47 | 0.322 above average | — |
| Carson Kelly (C) | CHC | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.313 average | — |
| Ronald Acuña Jr. (RF) | ATL | 4 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 2 / 1 | 0.45 | 0.364 elite | — |
| Ozzie Albies (2B) | ATL | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 0 | 1 / 1 | 0.33 | 0.282 weak | — |
| Ian Happ (LF) | CHC | 2 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | -0.02 | 0.317 average | — |
| Michael Harris II (CF) | ATL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 1 / 1 | 0 | 0.339 elite | — |
| Ha-Seong Kim (SS) | ATL | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.221 weak | — |
| Austin Riley (3B) | ATL | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 | 0.297 below average | — |
| Pedro Ramirez (2B) | CHC | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 2 / 1 | 0 | 0.289 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.068 | positive favors home; negative favors away |
| Recent form | -0.078 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.146 | positive favors home; negative favors away |
| Composite | 0.058 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.77-5.68 | 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.77-5.68 | 4-6 | 0.092 | 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 |
|---|---|---|---|---|
| CHC | Pete Crow-Armstrong | batter / CF | worse | predicted_RBI 3.1 |
| CHC | Michael Conforto | batter / DH | better | predicted_RBI 2.8 |
| ATL | Ozzie Albies | batter / 2B | better | predicted_RBI 2.43 |
| CHC | Seiya Suzuki | batter / RF | worse | predicted_AB -2.18 |
| ATL | Ronald Acuña Jr. | batter / RF | worse | predicted_SO 2.02 |
| CHC | Shota Imanaga | pitcher / Starter | neutral | predicted_SO 2 |
| CHC | Nico Hoerner | batter / SS | worse | predicted_AB -1.986 |
| CHC | Michael Busch | batter / 1B | worse | predicted_SO 1.98 |
| 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 | 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_FINALIZED_MATCH_BOX | ATL model pitcher projections differ from final simulation pitching box score (ER: current=6, sim=7). | ATL |
| info | CURRENT_FINALIZED_MATCH_BOX | ATL 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; RBI: current=4, sim=5; R: current=4, sim=5; SO: current=8, sim=10; HBP: current=0, 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, 2B current=1 box=0, RBI current=1 box=0; Ronald Acuña Jr.: AB current=4 box=5, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Ozzie Albies: H current=1 box=3, 2B current=0 box=1, HR current=0 box=1, RBI current=0 box=3; Matt Olson: AB current=4 box=3, HR current=1 box=0, BB current=1 box=0, SO current=1 box=2; Michael Harris II: H current=1 box=0, RBI current=1 box=0, SO current=1 box=2; Sean Murphy: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=1, R current=0 box=1; Mauricio Dubón: R current=0 box=1; Ha-Seong Kim: H current=0 box=1, R current=0 box=1, BB current=0 box=1 | ATL |
| info | CURRENT_FINALIZED_MATCH_BOX | CHC model-prediction batting totals differ from final simulation box score (AB: current=33, sim=29; H: current=8, sim=5; RBI: current=5, sim=7; R: current=5, sim=7; BB: current=5, sim=1; SO: current=7, sim=8; HBP: current=0, sim=2). | CHC |
| info | CURRENT_PLAYER_MATCH_BOX | CHC current finalized hitter lines are model predictions and differ from the simulation box score: Michael Busch: H current=1 box=0, BB current=1 box=0, SO current=1 box=3; Seiya Suzuki: AB current=4 box=3, HR current=1 box=0, RBI current=1 box=0, BB current=1 box=0; Nico Hoerner: AB current=4 box=2, H current=1 box=0, HBP current=0 box=1; Alex Bregman: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, BB current=1 box=0; Pete Crow-Armstrong: RBI current=1 box=4, BB current=1 box=0, SO current=1 box=0; Ian Happ: BB current=1 box=0; Pedro Ramirez: H current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Michael Conforto: H current=0 box=2, 2B current=0 box=1, HR current=0 box=1, RBI current=0 box=3 | CHC |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| BAL | Chris Bassitt | 4 ER / 15 outs | 1 ER / 20 outs | -3 |
| NYM | Xzavion Curry | 1 ER / 15 outs | 6 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: Xzavion Curry (NYM) posted 18.00 ERA vs projected 1.80 (6 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
Chris Bassitt (BAL) threw 20 outs, 1 ER = 1.35 ERA against a projected 7.2 ERA (-5.85 ERA error)
Bullpen behind him: 0 ER over 3 outs.
The HOME lineup he faced produced 1 runs on 7 hits and 0 HR, against a projected 5 runs / 8 hits (-4 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Xzavion Curry (NYM) threw 9 outs, 6 ER = 18 ERA against a projected 1.8 ERA (16.2 ERA error) only 8 prior appearances in the covered season - the projection had little of his own record to stand on
Bullpen behind him: 0 ER over 0 outs.
The AWAY lineup he faced produced 7 runs on 9 hits and 4 HR, against a projected 4 runs / 7 hits (3 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| BAL | Chris Bassitt (Starter) | 20 / 15 | 1.35 / 7.2 (-5.85) | 1 / 4 | 5 / 6 | 0 / 1 | 1 / 1 | 2.05 | 6 / 3 | 5.35 | venue away: 6.13 vs 3.54 ERA (worse here) · opp run factor 1.03 (average) · 18 prior appearances this season |
| BAL | Yennier Cano (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 9 (-9.00) | 0 / 1 | 1 / 1 | 0 / 1 | 0 / 0 | 0.16 | 0 / 1 | 0.74 | |
| NYM | Xzavion Curry (Starter) | 9 / 15 | 18 / 1.8 (+16.20) | 6 / 1 | 6 / 4 | 4 / 1 | 1 / 1 | 2.4 | 3 / 4 | 3.21 | opp run factor 1 (average) · 8 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Christian Encarnacion-Strand (3B) | BAL | 4 / 4 | 3 / 1 | 2 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | 3 / 1 | 0 / 0 | 1 / 1 | 2.49 | 0.342 elite | projection too low |
| Samuel Basallo (C) | BAL | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 1.4 | 0.324 above average | projection too low |
| Francisco Lindor (SS) | NYM | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | -1.26 | 0.329 above average | bad day |
| Dylan Beavers (LF) | BAL | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 2 / 1 | -1.11 | 0.296 below average | projection too high |
| Jeremiah Jackson (2B) | BAL | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 1 / 0 | 0 / 0 | 2 / 1 | 0.93 | 0.291 below average | good day |
| Gunnar Henderson (SS) | BAL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | -0.8 | 0.318 average | no signal |
| Colton Cowser (CF) | BAL | 3 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 0.8 | 0.315 average | no signal |
| Juan Soto (LF) | NYM | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | -0.8 | 0.412 elite | bad day |
| Rece Hinds (RF) | BAL | 4 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0.171 weak | — |
| Carson Benge (RF) | NYM | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | -0.47 | 0.338 above average | — |
| Brett Baty (DH) | NYM | 4 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0.31 average | — |
| Luis Torrens (C) | NYM | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 2 / 0 | -0.47 | 0.295 below average | — |
| Pete Alonso (1B) | BAL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | -0.33 | 0.395 elite | — |
| Coby Mayo (DH) | BAL | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 0 | 0 / 1 | -0.14 | 0.328 above average | — |
| A.J. Ewing (CF) | NYM | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0.14 | 0.322 above average | — |
| Jared Young (1B) | NYM | 3 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 0 | 0 / 1 | 0.02 | 0.322 above average | — |
| Bo Bichette (3B) | NYM | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 2 / 1 | 0 | 0.326 above average | — |
| Marcus Semien (2B) | NYM | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.304 average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.058 | positive favors home; negative favors away |
| Recent form | -0.038 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.032 | positive favors home; negative favors away |
| Composite | 0.454 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.04-4.93 | 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.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 | 4.04-4.93 | 4-5 | 0.107 | 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 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 |
|---|---|---|---|---|
| NYM | A.J. Ewing | batter / CF | better | predicted_RBI 2.648 |
| NYM | Juan Soto | batter / LF | deboosted | predicted_2B 1.898 |
| BAL | Dylan Beavers | batter / LF | worse | predicted_AB 1.835 |
| NYM | Bo Bichette | batter / 3B | deboosted | predicted_2B 1.834 |
| BAL | Samuel Basallo | batter / C | neutral | predicted_RBI 1.8 |
| BAL | Rece Hinds | batter / RF | better | predicted_2B 1.787 |
| BAL | Gunnar Henderson | batter / SS | worse | predicted_AB -1.53 |
| BAL | Pete Alonso | batter / 1B | worse | predicted_AB -1.4 |
| 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 | 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 | BAL model pitcher projections differ from final simulation pitching box score (ER: current=6, sim=7). | BAL |
| info | CURRENT_FINALIZED_MATCH_BOX | BAL model-prediction batting totals differ from final simulation box score (AB: current=32, sim=34; 2B: current=1, sim=2; 3B: current=0, sim=1; HR: current=1, sim=2; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=2; HBP: current=0, sim=1). | BAL |
| info | CURRENT_PLAYER_MATCH_BOX | BAL current finalized hitter lines are model predictions and differ from the simulation box score: Coby Mayo: 3B 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; Christian Encarnacion-Strand: HR current=0 box=1; Dylan Beavers: AB current=4 box=5, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Gunnar Henderson: AB current=4 box=3, H current=1 box=0, R current=1 box=0, SO current=1 box=0; Samuel Basallo: AB current=3 box=4, H current=1 box=2, HR current=0 box=1, RBI current=0 box=2; Jeremiah Jackson: AB current=3 box=4, H current=1 box=0, SO current=1 box=2; Rece Hinds: AB current=3 box=4, H current=0 box=2, 2B current=0 box=2, R current=0 box=1 | BAL |
| info | CURRENT_FINALIZED_MATCH_BOX | NYM model-prediction batting totals differ from final simulation box score (AB: current=34, sim=33; 2B: current=1, sim=5; HR: current=1, sim=2; RBI: current=4, sim=7; R: current=5, sim=7; BB: current=3, sim=1; SO: current=7, 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: H current=1 box=0; Jared Young: H current=1 box=0, 2B current=1 box=0; Juan Soto: H current=1 box=3, 2B current=0 box=2, BB current=1 box=0; A.J. Ewing: H current=1 box=2, HR current=0 box=2, RBI current=0 box=3, BB current=1 box=0; Bo Bichette: H current=1 box=2, 2B current=0 box=2, RBI current=1 box=2, R current=0 box=1; Brett Baty: SO current=1 box=0; Francisco Lindor: 2B current=0 box=1, HR current=1 box=0, BB current=1 box=0; Marcus Semien: AB current=4 box=3, H current=1 box=0, R current=0 box=1, BB current=0 box=1 | NYM |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| BOS | Jake Bennett | 3 ER / 17 outs | 3 ER / 14 outs | 0 |
| TEX | MacKenzie Gore | 3 ER / 15 outs | 3 ER / 12 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:
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
Jake Bennett (BOS) threw 14 outs, 3 ER = 5.79 ERA against a projected 4.76 ERA (1.03 ERA error)
Bullpen behind him: 3 ER over 3 outs.
The HOME lineup he faced produced 6 runs on 13 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
MacKenzie Gore (TEX) threw 12 outs, 3 ER = 6.75 ERA against a projected 5.4 ERA (1.35 ERA error)
Bullpen behind him: 0 ER over 3 outs.
The AWAY lineup he faced produced 3 runs on 2 hits and 1 HR, against a projected 4 runs / 8 hits (-1 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| BOS | Jake Bennett (Starter) | 14 / 17 | 5.79 / 4.76 | 3 / 3 | 8 / 4 | 0 / 1 | 1 / 0 | 0.79 | 7 / 5 | 5.34 | venue away: 3.19 vs 4.21 ERA (ok) · opp run factor 0.97 (average) · 18 prior appearances this season |
| BOS | Erik Miller (Setup Man) | 3 / 3 | 27 / 0 (+27.00) | 3 / 0 | 2 / 1 | 0 / 0 | 1 / 1 | 0.73 | 1 / 2 | 1.55 | |
| TEX | MacKenzie Gore (Starter) | 12 / 15 | 6.75 / 5.4 | 3 / 3 | 2 / 3 | 1 / 0 | 3 / 4 | 2.7 | 0 / 2 | 4.85 | venue home: 3.36 vs 5.79 ERA (ok) · opp run factor 1.03 (average) · 31 prior appearances this season |
| TEX | Jakob Junis (Setup Man) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0.25 | 2 / 2 | 0.57 |
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 Jung (3B) | TEX | 5 / 4 | 3 / 1 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 1.25 | 0.347 elite | projection too low |
| Adley Rutschman (C) | BOS | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -1.11 | 0.331 above average | bad day |
| Justin Foscue (2B) | TEX | 5 / 3 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 0 | 0 / 0 | 1 / 1 | 0.78 | 0.327 above average | projection too low |
| Roman Anthony (LF) | BOS | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | -0.47 | 0.348 elite | — |
| Jahmai Jones (DH) | BOS | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.327 above average | — |
| Wilyer Abreu (RF) | BOS | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 0 | 0 / 1 | -0.47 | 0.351 elite | — |
| Isiah Kiner-Falefa (2B) | BOS | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.311 average | — |
| Danny Jansen (C) | TEX | 3 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.262 weak | — |
| Willson Contreras (1B) | BOS | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 2 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | -0.33 | 0.377 elite | — |
| Corey Seager (SS) | TEX | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | 2 / 1 | -0.33 | 0.352 elite | — |
| Trevor Story (SS) | BOS | 3 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | -0.31 | 0.248 weak | — |
| Caleb Durbin (3B) | BOS | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 2 / 0 | 0 / 1 | 0.19 | 0.293 below average | — |
| Jake Burger (1B) | TEX | 4 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 1 / 0 | 1 / 1 | 0.18 | 0.315 average | — |
| Nate Eaton (CF) | BOS | 1 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.269 weak | — |
| Ezequiel Duran (CF) | TEX | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 / 0 | 0 / 0 | 2 / 1 | 0 | 0.306 average | — |
| Elias Díaz (DH) | TEX | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.267 weak | — |
| Brandon Nimmo (RF) | TEX | 4 / 4 | 1 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 0 | 0.345 elite | — |
| Wyatt Langford (LF) | TEX | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 2 / 1 | 0 | 0.316 average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.64 | positive favors home; negative favors away |
| Recent form | -0.124 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.058 | positive favors home; negative favors away |
| Composite | -0.33 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.16-4.18 | n/a | Base ML historical model prediction |
| variance_applied | 4-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 0.528 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run) |
| embedded_savant_run_environment | 4-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 | 4.16-4.18 | 4-4 | 0.017 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-4 | 4-5 | -1 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run) |
| 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 | 6-5 | 2 | 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 |
|---|---|---|---|---|
| TEX | Justin Foscue | batter / 2B | worse | predicted_RBI 2.72 |
| BOS | Roman Anthony | batter / LF | deboosted | predicted_RBI 2.62 |
| BOS | Jahmai Jones | batter / DH | worse | predicted_RBI 1.9 |
| BOS | Adley Rutschman | batter / C | worse | predicted_AB -1.65 |
| BOS | Wilyer Abreu | batter / RF | worse | predicted_AB -1.53 |
| BOS | Willson Contreras | batter / 1B | worse | predicted_AB 1.496 |
| BOS | Trevor Story | batter / SS | worse | predicted_AB -1.36 |
| TEX | Josh Jung | batter / 3B | worse | predicted_H -1.24 |
| 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 | 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 | BOS model-prediction batting totals differ from final simulation box score (H: current=8, sim=6; 2B: current=2, sim=1; HR: current=1, sim=0; RBI: current=4, sim=6; R: current=4, sim=6; BB: current=3, sim=6; SO: current=9, sim=7; SF: current=0, sim=1). | BOS |
| info | CURRENT_PLAYER_MATCH_BOX | BOS current finalized hitter lines are model predictions and differ from the simulation box score: Roman Anthony: RBI current=0 box=3, R current=0 box=1; Jahmai Jones: AB current=3 box=4, RBI current=0 box=2, R current=0 box=1, BB current=0 box=1; Willson Contreras: AB current=4 box=5, HR current=1 box=0, RBI current=1 box=0, BB current=1 box=0; Wilyer Abreu: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Trevor Story: AB current=4 box=3, 2B current=1 box=0, RBI current=1 box=0, R current=0 box=1; Nate Eaton: BB current=0 box=1; Adley Rutschman: AB current=4 box=3, 2B current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Isiah Kiner-Falefa: H current=1 box=0, RBI current=0 box=1, R current=0 box=1, SF current=0 box=1 | BOS |
| info | CURRENT_FINALIZED_MATCH_BOX | TEX model-prediction batting totals differ from final simulation box score (AB: current=32, sim=34; H: current=8, sim=7; 2B: current=2, sim=4; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=2, sim=3; SO: current=8, sim=11). | TEX |
| info | CURRENT_PLAYER_MATCH_BOX | TEX current finalized hitter lines are model predictions and differ from the simulation box score: Justin Foscue: AB current=3 box=5, H current=1 box=2, HR current=0 box=1, RBI current=1 box=3; Corey Seager: 2B current=0 box=1, RBI current=1 box=0, BB current=1 box=0; Jake Burger: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Ezequiel Duran: H current=1 box=2, 2B current=0 box=1, RBI current=1 box=0, R current=0 box=1; Josh Jung: H current=1 box=0, 2B current=1 box=0, R current=1 box=0, SO current=0 box=1; Elias Díaz: 2B current=0 box=1, RBI current=0 box=1, R current=0 box=1, BB current=0 box=1; Brandon Nimmo: RBI current=0 box=1, R current=0 box=1; Wyatt Langford: AB current=3 box=4, H current=1 box=0, R current=1 box=0, BB current=1 box=0 | TEX |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| CHW | Anthony Kay | 5 ER / 14 outs | 0 ER / 12 outs | -5 |
| CLE | Parker Messick | 2 ER / 18 outs | 3 ER / 18 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 Anthony Kay (CHW) at a projected 9.64 ERA, but the per-player feed carries no pitching row for him in this game, so the actual-versus-projected comparison cannot be made on this side. That is a source-coverage gap in the settled box, not a forecasting failure.
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 6 runs on 5 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
Parker Messick (CLE) threw 18 outs, 3 ER = 4.5 ERA against a projected 3 ERA (1.5 ERA error)
Bullpen behind him: 0 ER over 9 outs.
The AWAY lineup he faced produced 3 runs on 8 hits and 1 HR, against a projected 3 runs / 6 hits (0 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| CLE | Parker Messick (Starter) | 18 / 18 | 4.5 / 3 | 3 / 2 | 7 / 6 | 1 / 0 | 0 / 2 | 1.5 | 8 / 7 | 5.66 | venue home: 2.85 vs 2.21 ERA (worse here) · opp run factor 0.98 (average) · 29 prior appearances this season |
| CLE | Cade Smith (Closer) | 4 / 4 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.37 | 2 / 0 | 1.59 | |
| CLE | Hunter Gaddis (Setup Man) | 3 / 3 | 0 / 18 (-18.00) | 0 / 2 | 1 / 3 | 0 / 0 | 0 / 0 | 0.36 | 0 / 0 | 0.81 | |
| CLE | Erik Sabrowski (Middle Reliever (High Leverage)) | 2 / 2 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0.44 | 0 / 2 | 1.18 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Tommy Pham (DH) | CHW | 4 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 3 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 1.4 | 0.21 weak | good day |
| Petey Halpin (CF) | CLE | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 3 / 0 | 2 / 0 | 0 / 0 | 0 / 1 | 1.4 | 0.29 below average | good day |
| Miguel Vargas (1B) | CHW | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -1.26 | 0.379 elite | bad day |
| Travis Bazzana (DH) | CLE | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -0.8 | 0.303 below average | projection too high |
| Randal Grichuk (LF) | CHW | 5 / 4 | 2 / 1 | 0 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 1 / 1 | 0.78 | 0.336 above average | projection too low |
| Chase Meidroth (2B) | CHW | 5 / 4 | 3 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 1 | 0.61 | 0.297 below average | good day |
| Jo Adell (RF) | CLE | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 2 / 1 | 0 / 1 | 1 / 0 | 2 / 1 | -0.6 | 0.329 above average | bad day |
| Colson Montgomery (3B) | CHW | 1 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 2 | -0.47 | 0.302 below average | — |
| Tristan Peters (RF) | CHW | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.316 average | — |
| Steven Kwan (LF) | CLE | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 0 / 0 | -0.47 | 0.324 above average | — |
| José Ramírez (3B) | CLE | 4 / 4 | 2 / 1 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 0.45 | 0.328 above average | — |
| David Fry (1B) | CLE | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 1 | 0.33 | 0.265 weak | — |
| Angel Genao (2B) | CLE | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | -0.14 | 0.295 below average | — |
| Austin Hedges (C) | CLE | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 1 | -0.14 | 0.276 weak | — |
| Brayan Rocchio (SS) | CLE | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | -0.14 | 0.293 below average | — |
| Brenton Doyle (CF) | CHW | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 | 0.236 weak | — |
| Luisangel Acuña (SS) | CHW | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.265 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.11 | positive favors home; negative favors away |
| Recent form | 0.202 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.045 | positive favors home; negative favors away |
| Composite | 0.07 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.83-5.34 | 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.557 | 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.83-5.34 | 4-5 | -0.508 | 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 |
|---|---|---|---|---|
| CHW | Tommy Pham | batter / DH | better | predicted_H 3 |
| CLE | Parker Messick | pitcher / Starter | better | predicted_SO 3 |
| CHW | Randal Grichuk | batter / LF | worse | predicted_AB 2.5 |
| CLE | Cade Smith | pitcher / Closer | worse | predicted_SO -2 |
| CHW | Tristan Peters | batter / RF | worse | predicted_RBI 1.606 |
| CLE | David Fry | batter / 1B | boosted | predicted_AB 1.5 |
| CHW | Colson Montgomery | batter / 3B | worse | predicted_SO -1.469 |
| CHW | Brenton Doyle | batter / CF | worse | predicted_H 1.39 |
| 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 | 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 | CHW model-prediction batting totals differ from final simulation box score (AB: current=31, sim=36; H: current=7, sim=9; 2B: current=2, sim=3; HR: current=1, sim=0; R: current=3, sim=4; SO: current=10, sim=9; HBP: current=0, sim=1). | CHW |
| info | CURRENT_PLAYER_MATCH_BOX | CHW current finalized hitter lines are model predictions and differ from the simulation box score: Randal Grichuk: AB current=4 box=5, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Miguel Vargas: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Tommy Pham: AB current=3 box=5, H current=0 box=3, 2B current=0 box=2, RBI current=0 box=2; Colson Montgomery: AB current=3 box=4, RBI current=1 box=0, R current=1 box=0, SO current=2 box=0; Kyle Teel: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0; Tristan Peters: AB current=3 box=4, RBI current=0 box=2, R current=0 box=1, SO current=1 box=0; Brenton Doyle: H current=1 box=2, R current=0 box=1, HBP current=0 box=1; Chase Meidroth: 2B current=1 box=0 | CHW |
| info | CURRENT_FINALIZED_MATCH_BOX | CLE model-prediction batting totals differ from final simulation box score (AB: current=32, sim=31; H: current=8, sim=7; 2B: current=1, sim=2; HR: current=1, sim=0; RBI: current=3, sim=5; R: current=4, sim=5; BB: current=3, sim=2; SO: current=6, sim=5). | CLE |
| info | CURRENT_PLAYER_MATCH_BOX | CLE current finalized hitter lines are model predictions and differ from the simulation box score: Travis Bazzana: H current=1 box=2, RBI current=1 box=0, BB current=1 box=0, SO current=1 box=0; David Fry: AB current=3 box=4, H current=0 box=1, RBI current=0 box=1, R current=0 box=1; Angel Genao: AB current=4 box=3, H current=1 box=0, BB current=0 box=1; José Ramírez: BB current=1 box=0, SO current=0 box=1; Austin Hedges: H current=1 box=0, RBI current=0 box=1, R current=0 box=1, SO current=1 box=0; Jo Adell: 2B current=0 box=1, HR current=1 box=0, RBI current=1 box=2, SO current=1 box=0; Steven Kwan: AB current=4 box=3, H current=1 box=0, R current=1 box=0; Brayan Rocchio: H current=1 box=2 | CLE |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| DET | Keider Montero | 3 ER / 17 outs | 2 ER / 12 outs | -1 |
| TOR | Max Scherzer | 3 ER / 15 outs | 1 ER / 15 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: Max Scherzer (TOR) posted 1.80 ERA vs projected 5.40 (1 ER in 15 outs); he is materially worse pitching home (6.75 ERA there vs 5.70 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
Keider Montero (DET) threw 12 outs, 2 ER = 4.5 ERA against a projected 4.76 ERA (-0.26 ERA error)
Bullpen behind him: 1 ER over 3 outs.
The HOME lineup he faced produced 5 runs on 9 hits and 0 HR, against a projected 4 runs / 8 hits (1 runs vs projection).
Who did the damage to him:
Verdict: offense: the lineup scored well below its projection
HOME pitching
Max Scherzer (TOR) threw 15 outs, 1 ER = 1.8 ERA against a projected 5.4 ERA (-3.6 ERA error)
Bullpen behind him: 0 ER over 9 outs.
The AWAY lineup he faced produced 1 runs on 6 hits and 0 HR, against a projected 5 runs / 8 hits (-4 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| DET | Keider Montero (Starter) | 12 / 17 | 4.5 / 4.76 | 2 / 3 | 6 / 6 | 0 / 1 | 2 / 1 | 1.28 | 4 / 4 | 3.07 | venue away: 4.31 vs 3.29 ERA (worse here) · opp run factor 1.03 (weak) · 30 prior appearances this season |
| DET | Tyler Holton (Setup Man) | 3 / 4 | 9 / 0 (+9.00) | 1 / 0 | 2 / 0 | 0 / 0 | 0 / 1 | 0.28 | 0 / 0 | 1.06 | |
| TOR | Max Scherzer (Starter) | 15 / 15 | 1.8 / 5.4 (-3.60) | 1 / 3 | 3 / 5 | 0 / 0 | 3 / 1 | 1.96 | 3 / 6 | 3.19 | venue home: 6.75 vs 5.7 ERA (worse here) · opp run factor 1.05 (average) · 15 prior appearances this season |
| TOR | Spencer Miles (Middle Reliever (High Leverage)) | 6 / 5 | 0 / 0 | 0 / 0 | 4 / 0 | 0 / 0 | 1 / 0 | 0.3 | 1 / 2 | 1.2 | |
| TOR | Louis Varland (Closer) | 3 / 4 | 0 / 6.75 (-6.75) | 0 / 1 | 0 / 3 | 0 / 0 | 0 / 1 | 0.34 | 2 / 0 | 1.07 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Dillon Dingler (C) | DET | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -1.4 | 0.338 above average | bad day |
| Kazuma Okamoto (3B) | TOR | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 0 | 1 / 1 | -1.07 | 0.33 above average | bad day |
| Myles Straw (LF) | TOR | 4 / 3 | 2 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0.94 | 0.297 below average | good day |
| Spencer Torkelson (1B) | DET | 2 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 2 / 1 | 1 / 1 | 0.8 | 0.312 average | no signal |
| Colt Keith (DH) | DET | 1 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 1 | 0.64 | 0.336 above average | projection too low |
| Riley Greene (LF) | DET | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -0.64 | 0.372 elite | bad day |
| George Springer (DH) | TOR | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -0.64 | 0.308 average | no signal |
| Hao-Yu Lee (2B) | DET | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.297 below average | — |
| John Peck (SS) | DET | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.332 above average | — |
| Ernie Clement (SS) | TOR | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | -0.47 | 0.26 weak | — |
| Vladimir Guerrero Jr. (1B) | TOR | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 0 | 0 / 0 | 0.33 | 0.336 above average | — |
| Brandon Valenzuela (C) | TOR | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 1 | 0.33 | 0.31 average | — |
| Kevin McGonigle (3B) | DET | 5 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 0 | 0.14 | 0.357 elite | — |
| Brett Callahan (RF) | DET | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | -0.14 | 0.29 below average | — |
| Brett Bateman (CF) | TOR | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | 0.14 | 0.306 average | — |
| Josh Smith (2B) | TOR | 4 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0 / 1 | -0.02 | 0.284 weak | — |
| Max Clark (CF) | DET | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 0 | 0.311 average | — |
| Nathan Lukes (RF) | TOR | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.284 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.854 | positive favors home; negative favors away |
| Recent form | -1.07 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.015 | positive favors home; negative favors away |
| Composite | -1.31 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.75-3.57 | n/a | Base ML historical model prediction |
| variance_applied | 5-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 6-4 | 0.58 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by 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.75-3.57 | 5-4 | -0.175 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 6-4 | 1 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by 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 |
|---|---|---|---|---|
| DET | Brett Callahan | batter / RF | better | predicted_H 2.434 |
| DET | Colt Keith | batter / DH | worse | predicted_AB 2.159 |
| DET | Max Clark | batter / CF | worse | predicted_AB -2.04 |
| TOR | Max Scherzer | pitcher / Starter | worse | predicted_ER 2 |
| TOR | Louis Varland | pitcher / Closer | better | predicted_ER -2 |
| TOR | Brett Bateman | batter / CF | worse | predicted_AB -1.6 |
| TOR | George Springer | batter / DH | better | predicted_RBI 1.49 |
| TOR | Kazuma Okamoto | batter / 3B | worse | predicted_SO -1.2 |
| 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 | 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 | DET model-prediction batting totals differ from final simulation box score (AB: current=31, sim=37; H: current=8, sim=10; 2B: current=1, sim=4; 3B: current=0, sim=1; RBI: current=4, sim=7; R: current=5, sim=7; BB: current=3, sim=2; SO: current=8, sim=10). | DET |
| info | CURRENT_PLAYER_MATCH_BOX | DET current finalized hitter lines are model predictions and differ from the simulation box score: Colt Keith: AB current=3 box=5, H current=1 box=0, SO current=1 box=2; Kevin McGonigle: AB current=4 box=5, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Hao-Yu Lee: 2B current=0 box=1, R current=0 box=1, BB current=0 box=1; Riley Greene: H current=1 box=2, RBI current=1 box=0, BB current=1 box=0; Brett Callahan: AB current=3 box=4, H current=1 box=3, 2B current=0 box=1, 3B current=0 box=1; Dillon Dingler: H current=1 box=2, RBI current=1 box=2, SO current=1 box=0; Max Clark: H current=1 box=0, BB current=0 box=1; John Peck: AB current=3 box=4, RBI current=0 box=1, R current=0 box=1, SO current=1 box=2 | DET |
| info | CURRENT_FINALIZED_MATCH_BOX | TOR model pitcher projections differ from final simulation pitching box score (ER: current=6, sim=7). | TOR |
| info | CURRENT_FINALIZED_MATCH_BOX | TOR model-prediction batting totals differ from final simulation box score (AB: current=33, sim=34; H: current=8, sim=7; 2B: current=1, sim=3; 3B: current=0, sim=1; BB: current=3, sim=4; SO: current=6, sim=4). | TOR |
| info | CURRENT_PLAYER_MATCH_BOX | TOR current finalized hitter lines are model predictions and differ from the simulation box score: Brett Bateman: 3B current=0 box=1, RBI current=1 box=0; Nathan Lukes: AB current=4 box=5, 2B current=0 box=1, RBI current=0 box=1, R current=0 box=1; George Springer: H current=1 box=2, 2B current=1 box=0, HR current=0 box=1, RBI current=1 box=2; Ernie Clement: H current=1 box=0; Vladimir Guerrero Jr.: SO current=0 box=1; Myles Straw: H current=0 box=1, 2B current=0 box=1, BB current=0 box=1; Kazuma Okamoto: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Josh Smith: 2B current=0 box=1, SO current=1 box=0 | TOR |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
No large single-factor errors.
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| KC | Daniel Lynch IV | 1 ER / 15 outs | 0 ER / 15 outs | -1 |
| HOU | Cristian Javier | 2 ER / 14 outs | 2 ER / 16 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:
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
Daniel Lynch IV (KC) threw 15 outs, 0 ER = 0 ERA against a projected 1.8 ERA (-1.8 ERA error)
Bullpen behind him: 2 ER over 10 outs.
The HOME lineup he faced produced 2 runs on 8 hits and 1 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
HOME pitching
Cristian Javier (HOU) threw 16 outs, 2 ER = 3.38 ERA against a projected 3.86 ERA (-0.48 ERA error)
Bullpen behind him: 2 ER over 4 outs.
The AWAY lineup he faced produced 5 runs on 8 hits and 2 HR, against a projected 4 runs / 8 hits (1 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| KC | Daniel Lynch IV (Starter) | 15 / 15 | 0 / 1.8 | 0 / 1 | 2 / 2 | 0 / 0 | 1 / 3 | 1.68 | 3 / 5 | 1.83 | venue away: 7.94 vs 5.85 ERA (ok) · opp run factor 0.98 (average) · 53 prior appearances this season |
| KC | Nate Pearson (Setup Man) | 3 / 4 | 9 / 0 (+9.00) | 1 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 0.5 | 0 / 2 | 1.22 | |
| KC | Craig Kimbrel (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 0 | 0 / 0 | 1 / 2 | 0 / 0 | 0 / 0 | 0.6 | 0 / 1 | 0.81 | |
| KC | Steven Cruz (Closer) | 3 / 5 | 9 / 0 (+9.00) | 1 / 0 | 2 / 1 | 1 / 0 | 0 / 2 | 0.33 | 3 / 1 | 0.9 | |
| KC | Nolan Hoffman (Reliever) | 1 / 0 | 0 / n/a | 0 / 1 | 2 / 1 | 0 / 0 | 0 / 1 | n/a | 0 / 2 | n/a | |
| HOU | Cristian Javier (Starter) | 16 / 14 | 3.38 / 3.86 | 2 / 2 | 5 / 5 | 1 / 0 | 3 / 3 | 1.77 | 2 / 4 | 4.6 | venue home: 5.7 vs 7.23 ERA (ok) · opp run factor 1.07 (weak) · 15 prior appearances this season |
| HOU | Enyel De Los Santos (Middle Reliever (High Leverage)) | 4 / 3 | 13.5 / 9 (+4.50) | 2 / 1 | 2 / 2 | 1 / 0 | 2 / 1 | 0.38 | 2 / 2 | 0.82 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Michael Massey (2B) | KC | 5 / 4 | 3 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 0 | 2 / 0 | 0 / 0 | 1 / 1 | 1.56 | 0.309 average | no signal |
| Yainer Diaz (C) | HOU | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1.4 | 0.304 average | no signal |
| Jeremy Peña (SS) | HOU | 4 / 4 | 3 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | 1.25 | 0.327 above average | projection too low |
| Yordan Alvarez (DH) | HOU | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -0.95 | 0.443 elite | bad day |
| John Rave (CF) | KC | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 1 / 1 | 0 / 0 | 1 / 1 | 0.93 | 0.318 average | no signal |
| Isaac Paredes (3B) | HOU | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 1 | 1 / 0 | -0.8 | 0.319 average | no signal |
| Jorge Barrosa (LF) | HOU | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 1 / 1 | 0.66 | 0.239 weak | good day |
| Jose Altuve (2B) | HOU | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | -0.64 | 0.271 weak | projection too high |
| Carter Jensen (C) | KC | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | -0.62 | 0.314 average | no signal |
| Vinnie Pasquantino (1B) | KC | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | -0.47 | 0.328 above average | — |
| Salvador Perez (DH) | KC | 5 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.31 average | — |
| Isaac Collins (LF) | KC | 3 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 0.47 | 0.298 below average | — |
| Christian Walker (1B) | HOU | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 2 / 1 | -0.47 | 0.3 below average | — |
| Nick Loftin (RF) | KC | 2 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0.33 | 0.292 below average | — |
| Josh Rojas (3B) | KC | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 0.33 | 0.224 weak | — |
| Bobby Witt Jr. (SS) | KC | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 2 / 1 | 1 / 1 | -0.14 | 0.379 elite | — |
| Cam Smith (RF) | HOU | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.319 average | — |
| Daulton Varsho (CF) | HOU | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.285 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.29 | positive favors home; negative favors away |
| Recent form | 0.267 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.098 | positive favors home; negative favors away |
| Composite | -0.17 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.57-4.51 | n/a | Base ML historical model prediction |
| variance_applied | 5-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 0.506 | 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.57-4.51 | 5-5 | -0.051 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-5 | 5-4 | 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 | 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 |
|---|---|---|---|---|
| HOU | Jorge Barrosa | batter / LF | better | predicted_AB 2.5 |
| HOU | Yordan Alvarez | batter / DH | worse | predicted_AB 2.432 |
| HOU | Yainer Diaz | batter / C | worse | predicted_SO 2.383 |
| HOU | Christian Walker | batter / 1B | worse | predicted_AB 2.326 |
| KC | Salvador Perez | batter / DH | worse | predicted_SO 2.214 |
| KC | John Rave | batter / CF | worse | predicted_AB 2.105 |
| HOU | Cam Smith | batter / RF | worse | predicted_SO 2.036 |
| KC | Vinnie Pasquantino | batter / 1B | better | predicted_AB 2.01 |
| 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 | 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 | HOU model-prediction batting totals differ from final simulation box score (AB: current=34, sim=46; H: current=7, sim=10; 2B: current=1, sim=3; HR: current=1, sim=0; BB: current=3, sim=6; SO: current=7, sim=12). | HOU |
| info | CURRENT_PLAYER_MATCH_BOX | HOU current finalized hitter lines are model predictions and differ from the simulation box score: Jeremy Peña: AB current=4 box=5, RBI current=1 box=0, R current=1 box=0, BB current=0 box=1; Yordan Alvarez: AB current=4 box=6, H current=1 box=3, 2B current=0 box=1, HR current=1 box=0; Isaac Paredes: RBI current=1 box=0, R current=1 box=0, BB current=1 box=2; Jose Altuve: AB current=4 box=5, 2B current=1 box=0, RBI current=0 box=1; Yainer Diaz: AB current=4 box=6, H current=1 box=0, SO current=0 box=3; Jorge Barrosa: AB current=3 box=5, H current=0 box=2, 2B current=0 box=1, RBI current=0 box=1; Christian Walker: AB current=4 box=6, H current=1 box=2, 2B current=0 box=1, RBI current=1 box=0; Cam Smith: AB current=3 box=5, BB current=0 box=1, SO current=1 box=3 | HOU |
| info | CURRENT_FINALIZED_MATCH_BOX | KC model-prediction batting totals differ from final simulation box score (AB: current=33, sim=45; H: current=8, sim=9; 2B: current=1, sim=3; HR: current=1, sim=0; RBI: current=4, sim=5; R: current=4, sim=5; SO: current=8, sim=12). | KC |
| info | CURRENT_PLAYER_MATCH_BOX | KC current finalized hitter lines are model predictions and differ from the simulation box score: Vinnie Pasquantino: AB current=4 box=6, 2B current=0 box=1, RBI current=1 box=2, BB current=1 box=0; Carter Jensen: AB current=4 box=6, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Nick Loftin: H current=1 box=2, 2B current=0 box=2, R current=0 box=1, BB current=0 box=1; John Rave: AB current=3 box=5, RBI current=0 box=1; Bobby Witt Jr.: AB current=4 box=5, H current=1 box=2; Salvador Perez: AB current=4 box=6, H current=1 box=0, RBI current=1 box=0, SO current=1 box=3; Michael Massey: AB current=4 box=5, 2B current=1 box=0, RBI current=0 box=1, R current=0 box=1; Josh Rojas: AB current=3 box=4, H current=1 box=0, BB 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 |
|---|---|---|---|---|
| LAD | Blake Snell | 0 ER / 18 outs | 0 ER / 3 outs | 0 |
| CIN | Andrew Abbott | 1 ER / 13 outs | 1 ER / 14 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:
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
Blake Snell (LAD) threw 3 outs, 0 ER = 0 ERA against a projected 0 ERA (0 ERA error) only 7 prior appearances in the covered season - the projection had little of his own record to stand on
Bullpen behind him: 2 ER over 5 outs.
The HOME lineup he faced produced 6 runs on 12 hits and 2 HR, against a projected 4 runs / 7 hits (2 runs vs projection).
Who did the damage to him:
Verdict: offense: the lineup scored well below its projection
HOME pitching
Andrew Abbott (CIN) threw 14 outs, 1 ER = 1.93 ERA against a projected 2.08 ERA (-0.15 ERA error)
Bullpen behind him: 0 ER over 6 outs.
The AWAY lineup he faced produced 2 runs on 7 hits and 0 HR, against a projected 5 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| LAD | Blake Snell (Starter) | 3 / 18 | 0 / 0 | 0 / 0 | 1 / 3 | 0 / 0 | 0 / 3 | 2.45 | 1 / 7 | 6.38 | venue away: 1.62 vs 2.14 ERA (ok) · opp run factor 0.98 (weak) · 7 prior appearances this season |
| LAD | Alex Vesia (Middle Reliever (High Leverage)) | 2 / 3 | 0 / 18 (-18.00) | 0 / 2 | 1 / 3 | 0 / 0 | 0 / 0 | 0.45 | 0 / 0 | 1.14 | |
| LAD | Jack Dreyer (Middle Reliever (High Leverage)) | 3 / 1 | 18 / 0 (+18.00) | 2 / 0 | 3 / 0 | 0 / 0 | 2 / 0 | 0.36 | 0 / 1 | 0.87 | |
| CIN | Andrew Abbott (Starter) | 14 / 13 | 1.93 / 2.08 | 1 / 1 | 3 / 3 | 0 / 1 | 5 / 1 | 2.01 | 5 / 7 | 4.13 | venue home: 4.64 vs 4.91 ERA (ok) · opp run factor 1.08 (strong) · 30 prior appearances this season |
| CIN | Brock Burke (Middle Reliever (High Leverage)) | 3 / 5 | 0 / 10.8 (-10.80) | 0 / 2 | 1 / 2 | 0 / 1 | 0 / 0 | 0.57 | 0 / 1 | 1.11 | |
| CIN | Emilio Pagán (Closer) | 3 / 6 | 0 / 9 (-9.00) | 0 / 2 | 1 / 4 | 0 / 1 | 0 / 0 | 0.3 | 3 / 0 | 1.08 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Freddie Freeman (1B) | LAD | 5 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 3 / 1 | -1.11 | 0.365 elite | bad day |
| Juan Brito (RF) | CIN | 3 / 3 | 3 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 0.94 | 0.292 below average | good day |
| Elly De La Cruz (SS) | CIN | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | 2 / 1 | 1 / 1 | 0 / 2 | 0.93 | 0.378 elite | projection too low |
| Will Smith (C) | LAD | 4 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 1 / 1 | 1 / 1 | 0.78 | 0.377 elite | projection too low |
| Matt McLain (2B) | CIN | 4 / 3 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 0 | 2 / 1 | 0.78 | 0.302 below average | good day |
| Tyler Stephenson (DH) | CIN | 3 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 0 / 1 | -0.64 | 0.33 above average | bad day |
| Dane Myers (CF) | CIN | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | 0 / 1 | 2 / 1 | 0.6 | 0.313 average | no signal |
| Teoscar Hernández (DH) | LAD | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 2 / 1 | -0.47 | 0.335 above average | — |
| Eugenio Suárez (3B) | CIN | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 2 | -0.47 | 0.298 below average | — |
| JJ Bleday (LF) | CIN | 4 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.339 elite | — |
| Mookie Betts (SS) | LAD | 4 / 4 | 3 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 0 | 0 / 0 | 0.34 | 0.336 above average | — |
| Kyle Tucker (RF) | LAD | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 1 | -0.33 | 0.33 above average | — |
| Tommy Edman (CF) | LAD | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 1 / 0 | 1 / 1 | -0.14 | 0.306 average | — |
| Miguel Rojas (2B) | LAD | 1 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | -0.14 | 0.304 average | — |
| Sal Stewart (1B) | CIN | 4 / 4 | 3 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 0 / 0 | 0 / 1 | 0.01 | 0.346 elite | — |
| Enrique Hernández (3B) | LAD | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.282 weak | — |
| Alex Call (LF) | LAD | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 | 0.276 weak | — |
| Jose Trevino (C) | CIN | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.217 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -2.051 | positive favors home; negative favors away |
| Recent form | -1.758 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.101 | positive favors home; negative favors away |
| Composite | -2.509 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 5.17-2.65 | n/a | Base ML historical model prediction |
| variance_applied | 5-3 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 8-4 | 0.58 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 8-4 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 8-4 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 8-4 | n/a | Capped at max 12 realistic runs |
| simulation_result | 8-4 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 5.17-2.65 | 5-3 | -0.522 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-3 | 8-4 | 2 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 8-4 | 8-4 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 8-4 | 8-4 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 8-4 | 8-4 | -0 | Capped at max 12 realistic runs |
| simulation_result | 8-4 | 8-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 |
|---|---|---|---|---|
| LAD | Blake Snell | pitcher / Starter | better | predicted_SO 3 |
| LAD | Alex Call | batter / LF | better | predicted_RBI 2.82 |
| LAD | Miguel Rojas | batter / 2B | worse | predicted_H 2.46 |
| CIN | Dane Myers | batter / CF | worse | predicted_AB 2.234 |
| LAD | Alex Vesia | pitcher / Middle Reliever (High Leverage) | worse | predicted_SO -2 |
| LAD | Teoscar Hernández | batter / DH | better | predicted_SO 1.946 |
| CIN | Matt McLain | batter / 2B | better | predicted_RBI 1.75 |
| LAD | Freddie Freeman | batter / 1B | better | predicted_RBI 1.55 |
| 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=31, sim=37; H: current=7, sim=10; 2B: current=1, sim=2; BB: current=4, sim=3; SO: current=11, sim=10). | CIN |
| info | CURRENT_PLAYER_MATCH_BOX | CIN current finalized hitter lines are model predictions and differ from the simulation box score: Tyler Stephenson: 2B current=1 box=0, HR current=0 box=1, R current=0 box=1, SO current=1 box=0; Eugenio Suárez: AB current=3 box=4, H current=1 box=2, 2B current=0 box=1, RBI current=1 box=0; Juan Brito: AB current=3 box=4, R current=1 box=0; Sal Stewart: AB current=4 box=5, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; JJ Bleday: AB current=3 box=4, SO current=1 box=2; Dane Myers: AB current=4 box=5, H current=1 box=2, R current=0 box=1, BB current=1 box=0; Jose Trevino: AB current=3 box=4, H current=1 box=0, SO current=1 box=2; Matt McLain: H current=0 box=2, 2B current=0 box=1, RBI current=0 box=2, R current=0 box=1 | CIN |
| info | CURRENT_FINALIZED_MATCH_BOX | LAD model-prediction batting totals differ from final simulation box score (AB: current=32, sim=40; H: current=8, sim=13; 2B: current=1, sim=4; HR: current=1, sim=3; RBI: current=4, sim=8; R: current=5, sim=8; BB: current=4, sim=1; SO: current=6, sim=10). | LAD |
| info | CURRENT_PLAYER_MATCH_BOX | LAD current finalized hitter lines are model predictions and differ from the simulation box score: Tommy Edman: AB current=4 box=5, RBI current=1 box=0, SO current=1 box=2; Teoscar Hernández: AB current=4 box=5, H current=1 box=2, BB current=1 box=0, SO current=1 box=3; Miguel Rojas: AB current=3 box=4, H current=1 box=3, HR current=0 box=1, RBI current=0 box=2; Freddie Freeman: AB current=4 box=5, H current=1 box=2, HR current=0 box=1, RBI current=0 box=2; Mookie Betts: 2B current=0 box=1, HR current=1 box=0, RBI current=1 box=0, BB current=0 box=1; Will Smith: AB current=4 box=5, H current=1 box=2, 2B current=0 box=1, RBI current=1 box=0; Enrique Hernández: AB current=3 box=4, H current=1 box=0, SO current=1 box=2; Kyle Tucker: AB current=3 box=4, H current=1 box=0, BB current=1 box=0 | LAD |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| MIA | Ryan Gusto | 1 ER / 14 outs | 2 ER / 13 outs | 1 |
| ARI | Merrill Kelly | 3 ER / 16 outs | 3 ER / 14 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:
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 Gusto (MIA) threw 13 outs, 2 ER = 4.15 ERA against a projected 1.93 ERA (2.22 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME 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
HOME pitching
No settled pitching line for this club. The forecast named Merrill Kelly (ARI) at a projected 5.06 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 4 runs on 10 hits and 1 HR, against a projected 5 runs / 9 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| MIA | Ryan Gusto (Starter) | 13 / 14 | 4.15 / 1.93 | 2 / 1 | 8 / 1 | 2 / 0 | 1 / 4 | 1.91 | 4 / 5 | 3.34 | venue away: 4.15 vs 4.19 ERA (ok) · opp run factor 1.03 (average) · 21 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Jakob Marsee (CF) | MIA | 3 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 2 / 1 | 1 / 1 | 0 / 1 | 1.71 | 0.311 average | no signal |
| Heriberto Hernández (LF) | MIA | 5 / 4 | 4 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | 0.48 | 0.35 elite | — |
| Griffin Conine (DH) | MIA | 5 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 3 / 1 | -0.47 | 0.361 elite | — |
| Otto Lopez (SS) | MIA | 5 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 0.47 | 0.327 above average | — |
| Joe Mack (C) | MIA | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | -0.47 | 0.287 below average | — |
| Xavier Edwards (2B) | MIA | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 0 | -0.47 | 0.312 average | — |
| Javier Sanoja (3B) | MIA | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 0 | 1 / 0 | -0.31 | 0.292 below average | — |
| Kyle Stowers (1B) | MIA | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 1 / 1 | -0.31 | 0.324 above average | — |
| Esteury Ruiz (RF) | MIA | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | -0.14 | 0.283 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.081 | positive favors home; negative favors away |
| Recent form | 0.002 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.029 | positive favors home; negative favors away |
| Composite | -0.252 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.83-3.7 | n/a | Base ML historical model prediction |
| variance_applied | 5-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 6-5 | 0.555 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 7-5 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 7-5 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 7-5 | n/a | Capped at max 12 realistic runs |
| simulation_result | 7-5 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.83-3.7 | 5-4 | -0.129 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 6-5 | -0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 6-5 | 7-5 | 1 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 7-5 | 7-5 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 7-5 | 7-5 | -0 | Capped at max 12 realistic runs |
| simulation_result | 7-5 | 7-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 |
|---|---|---|---|---|
| ARI | Ketel Marte | batter / 2B | worse | predicted_AB -2.55 |
| MIA | Kyle Stowers | batter / 1B | worse | predicted_RBI 2.49 |
| MIA | Joe Mack | batter / C | better | predicted_RBI 2.45 |
| ARI | Tim Tawa | batter / CF | worse | predicted_SO 2.129 |
| ARI | Gabriel Moreno | batter / C | worse | predicted_AB -2.09 |
| MIA | Javier Sanoja | batter / 3B | worse | predicted_SO 1.715 |
| MIA | Esteury Ruiz | batter / RF | worse | predicted_AB 1.5 |
| MIA | Otto Lopez | batter / SS | worse | predicted_SO 1.432 |
| 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 | 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_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=32; H: current=8, sim=5; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=5; SO: current=6, sim=9). | ARI |
| info | CURRENT_PLAYER_MATCH_BOX | ARI current finalized hitter lines are model predictions and differ from the simulation box score: Lars Nootbaar: H current=1 box=0, SO current=1 box=0; Gabriel Moreno: AB current=4 box=3, 2B current=1 box=0, RBI current=1 box=0, BB current=0 box=1; Ketel Marte: AB current=4 box=3, RBI current=1 box=2, BB current=0 box=1, SO current=0 box=1; Jesús Sánchez: AB current=3 box=4, H current=0 box=1, R current=0 box=1; Corbin Carroll: 2B current=0 box=1, RBI current=0 box=1, BB current=1 box=0; Tim Tawa: H current=1 box=0, RBI current=1 box=0, BB current=0 box=1, SO current=1 box=3; Geraldo Perdomo: AB current=4 box=3, H current=1 box=0, SO current=0 box=1; Pavin Smith: AB current=3 box=4, H current=1 box=0 | ARI |
| info | CURRENT_FINALIZED_MATCH_BOX | MIA model-prediction batting totals differ from final simulation box score (AB: current=34, sim=36; 2B: current=2, sim=1; HR: current=1, sim=3; RBI: current=4, sim=7; R: current=5, sim=7; BB: current=3, sim=2; SO: current=6, sim=8; HBP: current=0, sim=1). | MIA |
| info | CURRENT_PLAYER_MATCH_BOX | MIA current finalized hitter lines are model predictions and differ from the simulation box score: Griffin Conine: H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Otto Lopez: AB current=4 box=5, H current=1 box=2, 2B current=0 box=1, SO current=0 box=2; Javier Sanoja: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Heriberto Hernández: BB current=0 box=1, SO current=1 box=0; Kyle Stowers: 2B current=1 box=0, HR current=0 box=1, RBI current=1 box=3, R current=0 box=1; Jakob Marsee: H current=1 box=2, BB current=1 box=0, SO current=1 box=0; Joe Mack: HR current=0 box=1, RBI current=0 box=3, R current=0 box=1, BB current=0 box=1; Xavier Edwards: R current=0 box=1, BB current=1 box=0 | MIA |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
No large single-factor errors.
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| MIL | Logan Henderson | 1 ER / 18 outs | 3 ER / 15 outs | 2 |
| PIT | Jared Jones | 5 ER / 15 outs | 3 ER / 15 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: Logan Henderson (MIL) posted 5.40 ERA vs projected 1.50 (3 ER in 15 outs); he is materially worse pitching away (2.84 ERA there vs 1.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
Logan Henderson (MIL) threw 15 outs, 3 ER = 5.4 ERA against a projected 1.5 ERA (3.9 ERA error)
Bullpen behind him: 0 ER over 6 outs.
The HOME lineup he faced produced 4 runs on 12 hits and 3 HR, against a projected 4 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
HOME pitching
Jared Jones (PIT) threw 15 outs, 3 ER = 5.4 ERA against a projected 9 ERA (-3.6 ERA error)
Bullpen behind him: 0 ER over 3 outs.
The AWAY lineup he faced produced 5 runs on 10 hits and 0 HR, against a projected 6 runs / 8 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| MIL | Logan Henderson (Starter) | 15 / 18 | 5.4 / 1.5 (+3.90) | 3 / 1 | 6 / 4 | 2 / 0 | 1 / 1 | 0.94 | 8 / 6 | 5.84 | venue away: 2.84 vs 1.84 ERA (worse here) · opp run factor 1.01 (average) · 16 prior appearances this season |
| MIL | Abner Uribe (Setup Man) | 3 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0.37 | 0 / 1 | 1.04 | |
| MIL | Trevor Megill (Closer) | 3 / 3 | 0 / 9 (-9.00) | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | 0.29 | 2 / 0 | 1.13 | |
| PIT | Jared Jones (Starter) | 15 / 15 | 5.4 / 9 (-3.60) | 3 / 5 | 7 / 6 | 0 / 2 | 1 / 2 | 2.01 | 9 / 1 | 6.56 | venue home: 4.6 vs 3.54 ERA (worse here) · opp run factor 0.96 (strong) · 18 prior appearances this season |
| PIT | Yohan Ramírez (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0.44 | 2 / 2 | 1.15 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Bryan Reynolds (DH) | PIT | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | -1.11 | 0.355 elite | bad day |
| Oneil Cruz (CF) | PIT | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | 2 / 2 | 1.07 | 0.355 elite | projection too low |
| Cooper Pratt (SS) | MIL | 4 / 3 | 2 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0.94 | 0.317 average | no signal |
| Jackson Chourio (LF) | MIL | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 0 | 1 / 1 | -0.93 | 0.339 elite | bad day |
| Rafael Flores Jr. (C) | PIT | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 0 | 0 / 0 | 2 / 1 | 0.93 | 0.344 elite | projection too low |
| Ronny Simon (RF) | PIT | 4 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0.78 | 0.317 average | no signal |
| Jake Bauers (RF) | MIL | 3 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 2 / 1 | 2 / 1 | 0.64 | 0.38 elite | projection too low |
| Christian Yelich (DH) | MIL | 5 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 1 | 0 / 1 | 2 / 1 | -0.64 | 0.312 average | no signal |
| Ryan O'Hearn (1B) | PIT | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.318 average | — |
| Brandon Lowe (2B) | PIT | 3 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 2 / 1 | 1 / 1 | 1 / 1 | 1 / 1 | 0.47 | 0.323 above average | — |
| Konnor Griffin (SS) | PIT | 5 / 4 | 2 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 1 / 1 | 0.47 | 0.3 below average | — |
| William Contreras (C) | MIL | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -0.33 | 0.335 above average | — |
| Joey Ortiz (3B) | MIL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 3 / 1 | 0 | 0.3 below average | — |
| Brice Turang (2B) | MIL | 4 / 4 | 1 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 1 / 1 | 1 / 1 | 0 | 0.347 elite | — |
| Andrew Vaughn (1B) | MIL | 2 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.334 above average | — |
| Luis Lara (CF) | MIL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 0 | 1 / 1 | 0 | 0.3 below average | — |
| Jacob Gonzalez (3B) | PIT | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.305 average | — |
| Jake Mangum (LF) | PIT | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.288 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -1.137 | positive favors home; negative favors away |
| Recent form | -0.93 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.053 | positive favors home; negative favors away |
| Composite | -1.101 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.97-4.36 | n/a | Base ML historical model prediction |
| variance_applied | 5-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-3 | 0.56 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-3 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-3 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-3 | n/a | Capped at max 12 realistic runs |
| simulation_result | 5-3 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.97-4.36 | 5-4 | 0.388 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 5-3 | 1 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-3 | 5-3 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-3 | 5-3 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-3 | 5-3 | -0 | Capped at max 12 realistic runs |
| simulation_result | 5-3 | 5-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 |
|---|---|---|---|---|
| PIT | Oneil Cruz | batter / CF | worse | predicted_AB -1.89 |
| MIL | Jackson Chourio | batter / LF | better | predicted_AB -1.69 |
| MIL | Jake Bauers | batter / RF | better | predicted_RBI 1.372 |
| MIL | William Contreras | batter / C | worse | predicted_RBI -1.37 |
| PIT | Jacob Gonzalez | batter / 3B | worse | predicted_AB 1.333 |
| PIT | Brandon Lowe | batter / 2B | worse | predicted_SO -1.27 |
| PIT | Rafael Flores Jr. | batter / C | worse | predicted_H -1.21 |
| MIL | Christian Yelich | batter / DH | worse | predicted_SO -1.132 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| 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_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 | MIL model-prediction batting totals differ from final simulation box score (AB: current=34, sim=33; H: current=8, sim=6; HR: current=1, sim=2; R: current=6, sim=5; BB: current=4, sim=2; SO: current=9, sim=5). | MIL |
| info | CURRENT_PLAYER_MATCH_BOX | MIL current finalized hitter lines are model predictions and differ from the simulation box score: Jake Bauers: AB current=4 box=3, HR current=0 box=1, RBI current=1 box=2, SO current=1 box=0; William Contreras: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Joey Ortiz: R current=0 box=1; Brice Turang: BB current=1 box=0, SO current=1 box=0; Jackson Chourio: H current=1 box=2, 2B current=0 box=1, RBI current=1 box=2; Christian Yelich: H current=1 box=0, 2B current=1 box=0, R current=1 box=0, BB current=1 box=0; Andrew Vaughn: AB current=3 box=4, H current=1 box=0; Luis Lara: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, R current=1 box=0 | MIL |
| info | CURRENT_FINALIZED_MATCH_BOX | PIT model-prediction batting totals differ from final simulation box score (H: current=8, sim=7; 3B: current=0, sim=1; HR: current=1, sim=0; RBI: current=5, sim=3; R: current=4, sim=3; BB: current=3, sim=2; SO: current=10, sim=7). | PIT |
| info | CURRENT_PLAYER_MATCH_BOX | PIT current finalized hitter lines are model predictions and differ from the simulation box score: Bryan Reynolds: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Oneil Cruz: AB current=4 box=3, 3B current=0 box=1; Ryan O'Hearn: AB current=4 box=3, 2B current=0 box=1, RBI current=1 box=0, BB current=0 box=1; Brandon Lowe: H current=1 box=2, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Jacob Gonzalez: AB current=3 box=4, H current=0 box=1, 2B current=0 box=1; Konnor Griffin: H current=1 box=0, 2B current=1 box=0, R current=1 box=0; Jake Mangum: AB current=3 box=4, H current=1 box=0, RBI current=0 box=1, R current=0 box=1; Ronny Simon: H current=1 box=2, RBI current=0 box=1, R current=0 box=1, 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 |
|---|---|---|---|---|
| NYY | Carlos Rodón | 3 ER / 17 outs | 2 ER / 18 outs | -1 |
| MIN | Zebby Matthews | 3 ER / 17 outs | 0 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: Zebby Matthews (MIN) posted 0.00 ERA vs projected 4.76 (0 ER in 18 outs); he faced a strong offense (opponent run factor 1.10, bucket strong).
What to do: Consider raising context.opponent_strength_weight; validate across the rolling window before promotion.
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Carlos Rodón (NYY) threw 18 outs, 2 ER = 3 ERA against a projected 4.76 ERA (-1.76 ERA error)
Bullpen behind him: 0 ER over 13 outs.
The HOME lineup he faced produced 3 runs on 8 hits and 1 HR, against a projected 4 runs / 7 hits (-1 runs vs projection).
Who did the damage to him:
Verdict: offense: the lineup scored well below its projection
HOME pitching
Zebby Matthews (MIN) threw 18 outs, 0 ER = 0 ERA against a projected 4.76 ERA (-4.76 ERA error)
Bullpen behind him: 2 ER over 8 outs.
The AWAY lineup he faced produced 3 runs on 7 hits and 0 HR, against a projected 5 runs / 8 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| NYY | Carlos Rodón (Starter) | 18 / 17 | 3 / 4.76 | 2 / 3 | 4 / 5 | 1 / 1 | 3 / 0 | 2.28 | 5 / 5 | 6.01 | venue away: 3.2 vs 2.61 ERA (worse here) · opp run factor 1.01 (average) · 14 prior appearances this season |
| NYY | Brent Headrick (Setup Man) | 4 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0.42 | 2 / 0 | 1.34 | |
| NYY | David Bednar (Closer) | 6 / 3 | 0 / 9 (-9.00) | 0 / 1 | 3 / 1 | 0 / 0 | 0 / 0 | 0.23 | 2 / 0 | 1.3 | |
| NYY | Paul Blackburn (Middle Reliever (High Leverage)) | 3 / 4 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0 / 1 | 0.93 | |
| MIN | Zebby Matthews (Starter) | 18 / 17 | 0 / 4.76 (-4.76) | 0 / 3 | 2 / 8 | 0 / 2 | 2 / 0 | 1.64 | 8 / 4 | 4.19 | venue home: 2.84 vs 6.93 ERA (ok) · opp run factor 1.1 (strong) · 21 prior appearances this season |
| MIN | A.J. Minter (Middle Reliever (High Leverage)) | 3 / 4 | 0 / 6.75 (-6.75) | 0 / 1 | 2 / 2 | 0 / 0 | 1 / 1 | 0.19 | 2 / 1 | 0.9 | |
| MIN | Jeff Hoffman (Setup Man) | 3 / 3 | 0 / 9 (-9.00) | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0.39 | 2 / 0 | 1.45 | |
| MIN | Yoendrys Gómez (Closer) | 2 / 3 | 27 / 9 (+18.00) | 2 / 1 | 3 / 1 | 0 / 1 | 1 / 0 | 0.61 | 2 / 1 | 0.9 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Ryan Kreidler (2B) | MIN | 4 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | 2 / 1 | 1.73 | 0.288 below average | good day |
| Ryan Jeffers (C) | MIN | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | 3 / 1 | -1.4 | 0.35 elite | bad day |
| Aaron Judge (RF) | NYY | 2 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | -0.8 | 0.396 elite | bad day |
| Luis García Jr. (1B) | NYY | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 3 / 1 | -0.78 | 0.348 elite | bad day |
| Anthony Volpe (2B) | NYY | 5 / 3 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.78 | 0.299 below average | good day |
| Ben Ross (SS) | MIN | 2 / 2 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 0.78 | 0.16 weak | good day |
| Austin Martin (LF) | MIN | 5 / 3 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | -0.64 | 0.307 average | no signal |
| Josh Bell (DH) | MIN | 5 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -0.64 | 0.333 above average | bad day |
| Cody Bellinger (LF) | NYY | 5 / 4 | 3 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 0 / 0 | 0.63 | 0.342 elite | projection too low |
| Luke Keaschall (RF) | MIN | 5 / 4 | 3 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 0 / 1 | 0 / 0 | 0.61 | 0.319 average | no signal |
| Spencer Jones (CF) | NYY | 6 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 5 / 1 | -0.47 | 0.329 above average | — |
| Ryan McMahon (3B) | NYY | 6 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 4 / 1 | -0.47 | 0.295 below average | — |
| Royce Lewis (3B) | MIN | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.311 average | — |
| Kody Clemens (1B) | MIN | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 0 | 2 / 1 | 0.33 | 0.336 above average | — |
| Ben Rice (DH) | NYY | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 3 / 1 | 1 / 1 | -0.27 | 0.376 elite | — |
| Emmanuel Rodriguez (CF) | MIN | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 1 | -0.14 | 0.48 elite | — |
| George Lombard Jr. (SS) | NYY | 6 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 / 0 | 0 / 1 | 0 | 0.276 weak | — |
| Austin Wells (C) | NYY | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.287 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -1.472 | positive favors home; negative favors away |
| Recent form | -1.35 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.1 | positive favors home; negative favors away |
| Composite | -1.907 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.88-3.31 | n/a | Base ML historical model prediction |
| variance_applied | 5-3 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 6-4 | 0.58 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by 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.88-3.31 | 5-3 | 0.424 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-3 | 6-4 | -0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by 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 |
|---|---|---|---|---|
| NYY | Ryan McMahon | batter / 3B | better | predicted_RBI 2.69 |
| MIN | Josh Bell | batter / DH | boosted | predicted_RBI 2.43 |
| NYY | Carlos Rodón | pitcher / Starter | better | predicted_SO 2 |
| NYY | Paul Blackburn | pitcher / Middle Reliever (High Leverage) | neutral | predicted_SO -2 |
| MIN | Ben Ross | batter / SS | worse | predicted_SO -1.875 |
| NYY | Spencer Jones | batter / CF | better | predicted_AB 1.27 |
| NYY | Austin Wells | batter / C | worse | predicted_AB 1.179 |
| NYY | Ben Rice | batter / DH | worse | predicted_SO -1.036 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| 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_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 | MIN model pitcher projections differ from final simulation pitching box score (ER: current=6, sim=7). | MIN |
| info | CURRENT_FINALIZED_MATCH_BOX | MIN model-prediction batting totals differ from final simulation box score (AB: current=32, sim=33; H: current=7, sim=6; 2B: current=2, sim=1; BB: current=4, sim=1; SO: current=8, sim=6). | MIN |
| info | CURRENT_PLAYER_MATCH_BOX | MIN current finalized hitter lines are model predictions and differ from the simulation box score: Luke Keaschall: RBI current=0 box=1, R current=0 box=1, BB current=1 box=0; Austin Martin: AB current=3 box=4, 2B current=1 box=0, R current=0 box=1, BB current=1 box=0; Royce Lewis: H current=1 box=0; Kody Clemens: H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Ryan Kreidler: H current=0 box=1, 2B current=0 box=1; Ben Ross: AB current=2 box=3, H current=0 box=1, R current=1 box=0, SO current=1 box=0; Ryan Jeffers: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Emmanuel Rodriguez: RBI current=1 box=0, R current=0 box=1 | MIN |
| info | CURRENT_FINALIZED_MATCH_BOX | NYY model-prediction batting totals differ from final simulation box score (AB: current=32, sim=38; H: current=8, sim=12; 2B: current=2, sim=1; HR: current=1, sim=3; RBI: current=5, sim=7; R: current=5, sim=7; BB: current=3, sim=1; SO: current=8, sim=6). | NYY |
| info | CURRENT_PLAYER_MATCH_BOX | NYY current finalized hitter lines are model predictions and differ from the simulation box score: Aaron Judge: AB current=4 box=5, BB current=1 box=0; Cody Bellinger: AB current=4 box=5, H current=1 box=2, 2B current=1 box=0, HR current=0 box=1; Ben Rice: AB current=4 box=5, H current=1 box=2, HR current=1 box=0, BB current=1 box=0; Luis García Jr.: RBI current=1 box=0, HBP current=0 box=1; Spencer Jones: AB current=4 box=5, H current=1 box=2, RBI current=1 box=0, R current=0 box=1; Anthony Volpe: H current=1 box=0, BB current=0 box=1; George Lombard Jr.: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=1; Ryan McMahon: H current=1 box=2, HR current=0 box=1, RBI current=0 box=3, R current=0 box=1 | NYY |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| OAK | Brady Basso | 1 ER / 15 outs | 4 ER / 8 outs | 3 |
| TB | Nick Martinez | 0 ER / 17 outs | 2 ER / 15 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: Brady Basso (OAK) posted 13.50 ERA vs projected 1.80 (4 ER in 8 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
Brady Basso (OAK) threw 8 outs, 4 ER = 13.5 ERA against a projected 1.8 ERA (11.7 ERA error)
Bullpen behind him: 0 ER over 9 outs.
The HOME lineup he faced produced 4 runs on 9 hits and 0 HR, against a projected 4 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
HOME pitching
Nick Martinez (TB) threw 15 outs, 2 ER = 3.6 ERA against a projected 0 ERA (3.6 ERA error)
Bullpen behind him: 1 ER over 9 outs.
The AWAY lineup he faced produced 3 runs on 8 hits and 2 HR, against a projected 4 runs / 8 hits (-1 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| OAK | Brady Basso (Starter) | 8 / 15 | 13.5 / 1.8 (+11.70) | 4 / 1 | 7 / 5 | 0 / 0 | 0 / 1 | 0.94 | 0 / 4 | 3.15 | venue away: 5.62 vs 0 ERA (ok) · opp run factor 1.01 (average) · 23 prior appearances this season |
| OAK | Seth Johnson (Reliever) | 7 / 3 | 0 / 18 (-18.00) | 0 / 2 | 0 / 4 | 0 / 0 | 0 / 0 | n/a | 4 / 0 | n/a | |
| OAK | Hogan Harris (Reliever) | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | n/a | 1 / 0 | n/a | |
| TB | Nick Martinez (Starter) | 15 / 17 | 3.6 / 0 (+3.60) | 2 / 0 | 5 / 2 | 2 / 0 | 0 / 0 | 0.71 | 3 / 4 | 3.04 | venue home: 3.92 vs 1.99 ERA (worse here) · opp run factor 0.97 (weak) · 28 prior appearances this season |
| TB | Cam Booser (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0.12 | 1 / 2 | 0.82 | |
| TB | Kevin Kelly (Setup Man) | 6 / 4 | 4.5 / 13.5 (-9.00) | 1 / 2 | 3 / 4 | 0 / 0 | 0 / 0 | 0.12 | 4 / 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Tommy White (1B) | OAK | 4 / 4 | 3 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 1.87 | 0.296 below average | good day |
| Yandy Díaz (DH) | TB | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -1.11 | 0.35 elite | bad day |
| Junior Caminero (3B) | TB | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | -0.95 | 0.363 elite | bad day |
| Henry Bolte (CF) | OAK | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 1 | 0 / 0 | 2 / 1 | 0.93 | 0.318 average | no signal |
| Shea Langeliers (DH) | OAK | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -0.93 | 0.362 elite | bad day |
| Donovan Walton (SS) | OAK | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | -0.8 | 0.332 above average | bad day |
| Carlos Cortes (LF) | OAK | 3 / 3 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | -0.78 | 0.302 below average | projection too high |
| Chandler Simpson (LF) | TB | 4 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0.78 | 0.265 weak | good day |
| Jeff McNeil (2B) | OAK | 3 / 4 | 2 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 1 / 0 | 0.47 | 0.303 below average | — |
| Zack Gelof (3B) | OAK | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -0.47 | 0.311 average | — |
| Jonny DeLuca (CF) | TB | 4 / 4 | 2 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0.266 weak | — |
| Lawrence Butler (RF) | OAK | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | -0.33 | 0.321 above average | — |
| Nick Madrigal (2B) | TB | 3 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0.31 | 0.293 below average | — |
| Nick Fortes (C) | TB | 2 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0.31 | 0.276 weak | — |
| Brian Serven (C) | OAK | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.29 below average | — |
| Ryan Vilade (1B) | TB | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 2 / 1 | 0 | 0.331 above average | — |
| Jorge Mateo (SS) | TB | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 0 | 0.284 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 1.633 | positive favors home; negative favors away |
| Recent form | 1.074 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.045 | positive favors home; negative favors away |
| Composite | 1.986 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.74-4.57 | n/a | Base ML historical model prediction |
| variance_applied | 5-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 2-6 | 0.767 | Enhanced ML with recent form, H2H, low-score analysis |
| embedded_savant_run_environment | 2-6 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 2-6 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 2-6 | n/a | Capped at max 12 realistic runs |
| simulation_result | 2-6 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.74-4.57 | 5-5 | 0.166 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-5 | 2-6 | 4 | Enhanced ML with recent form, H2H, low-score analysis |
| embedded_savant_run_environment | 2-6 | 2-6 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 2-6 | 2-6 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 2-6 | 2-6 | 0 | Capped at max 12 realistic runs |
| simulation_result | 2-6 | 2-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 |
|---|---|---|---|---|
| OAK | Seth Johnson | pitcher / Reliever | worse | predicted_H 4 |
| OAK | Brady Basso | pitcher / Starter | worse | predicted_IP -3 |
| OAK | Chris Roycroft | pitcher / Reliever | worse | predicted_ER 3 |
| TB | Victor Mesa Jr. | batter / RF | better | predicted_H 2.06 |
| TB | Nick Fortes | batter / C | better | predicted_H 1.7 |
| OAK | Donovan Walton | batter / SS | worse | predicted_SO 1.472 |
| OAK | Tommy White | batter / 1B | worse | predicted_SO 1.364 |
| TB | Jorge Mateo | batter / SS | worse | predicted_AB 1.329 |
| 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 | 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 | OAK model-prediction batting totals differ from final simulation box score (H: current=8, sim=6; 2B: current=2, sim=1; HR: current=1, sim=0; RBI: current=4, sim=2; R: current=4, sim=2; BB: current=2, sim=1; SO: current=6, sim=8; HBP: current=0, sim=1). | OAK |
| info | CURRENT_PLAYER_MATCH_BOX | OAK current finalized hitter lines are model predictions and differ from the simulation box score: Henry Bolte: 2B current=0 box=1, R current=1 box=0; Shea Langeliers: H current=1 box=2, HR current=1 box=0; Donovan Walton: H current=1 box=0, SO current=0 box=2; Tommy White: H current=1 box=0, SO current=1 box=2; Carlos Cortes: AB current=3 box=4, 2B current=1 box=0; Lawrence Butler: BB current=1 box=0; Jeff McNeil: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Brian Serven: AB current=3 box=2, H current=0 box=1, SO current=1 box=0, HBP current=0 box=1 | OAK |
| info | CURRENT_FINALIZED_MATCH_BOX | TB model-prediction batting totals differ from final simulation box score (AB: current=33, sim=36; H: current=9, sim=12; 2B: current=2, sim=3; 3B: current=0, sim=1; HR: current=1, sim=0; RBI: current=4, sim=6; R: current=5, sim=6; SO: current=6, sim=4). | TB |
| info | CURRENT_PLAYER_MATCH_BOX | TB current finalized hitter lines are model predictions and differ from the simulation box score: Ryan Vilade: AB current=4 box=3, R current=0 box=1, BB current=0 box=1, SO current=1 box=0; Jonny DeLuca: 2B current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Nick Madrigal: R current=1 box=0, BB current=0 box=1, SO current=0 box=1; Victor Mesa Jr.: H current=1 box=3, 3B current=0 box=1, RBI current=0 box=2, SO current=1 box=0; Junior Caminero: AB current=4 box=5, 2B current=0 box=1, HR current=1 box=0, BB current=1 box=0; Chandler Simpson: H current=1 box=2, 2B current=0 box=1; Yandy Díaz: AB current=4 box=5, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Nick Fortes: AB current=3 box=4, H current=1 box=2, 2B current=0 box=1, RBI current=0 box=1 | TB |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| PHI | Zack Wheeler | 3 ER / 17 outs | 0 ER / 21 outs | -3 |
| WAS | Jared Simpson | 0 ER / 9 outs | 2 ER / 1 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: Jared Simpson (WAS) posted 54.00 ERA vs projected 0.00 (2 ER in 1 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
Zack Wheeler (PHI) threw 21 outs, 0 ER = 0 ERA against a projected 4.76 ERA (-4.76 ERA error)
Bullpen behind him: 0 ER over 3 outs.
The HOME lineup he faced produced 0 runs on 4 hits and 0 HR, against a projected 4 runs / 7 hits (-4 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Jared Simpson (WAS) threw 1 outs, 2 ER = 54 ERA against a projected 0 ERA (54 ERA error) only 3 prior appearances in the covered season - the projection had little of his own record to stand on
Bullpen behind him: 0 ER over 8 outs.
The AWAY lineup he faced produced 3 runs on 5 hits and 0 HR, against a projected 4 runs / 8 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| PHI | Zack Wheeler (Starter) | 21 / 17 | 0 / 4.76 (-4.76) | 0 / 3 | 4 / 4 | 0 / 0 | 1 / 4 | 2.56 | 5 / 5 | 6.3 | venue away: 3.38 vs 2.86 ERA (worse here) · opp run factor 1 (strong) · 25 prior appearances this season |
| PHI | Jhoan Duran (Closer) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.12 | 2 / 0 | 1.29 | |
| WAS | Jared Simpson (Starter) | 1 / 9 | 54 / 0 (+54.00) | 2 / 0 | 1 / 1 | 0 / 0 | 4 / 2 | 0 | 0 / 5 | 3.32 | opp run factor 1 (average) · thin sample: 3 prior appearances this season (high uncertainty) |
| WAS | Yovanny Cruz (Middle Reliever (High Leverage)) | 2 / 4 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0.64 | 0 / 1 | 0.82 | |
| WAS | Luis Perales (Middle Reliever (High Leverage)) | 6 / 3 | 0 / 9 (-9.00) | 0 / 1 | 0 / 1 | 0 / 1 | 5 / 1 | 1.52 | 2 / 0 | 2.13 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| James Wood (RF) | WAS | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -1.73 | 0.412 elite | bad day |
| Kyle Schwarber (DH) | PHI | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | 2 / 1 | -1.4 | 0.365 elite | bad day |
| Luis Arraez (2B) | PHI | 2 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 3 / 0 | 0 / 0 | 1.3 | 0.306 average | no signal |
| Alec Bohm (1B) | PHI | 2 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 3 / 0 | 0 / 0 | 1.15 | 0.328 above average | projection too low |
| Justin Crawford (CF) | PHI | 3 / 3 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 1.11 | 0.289 below average | good day |
| Jorbit Vivas (3B) | WAS | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | -0.8 | 0.292 below average | projection too high |
| Keibert Ruiz (C) | WAS | 2 / 3 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -0.78 | 0.289 below average | projection too high |
| Brandon Marsh (LF) | PHI | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.302 below average | — |
| Daylen Lile (LF) | WAS | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | 0.47 | 0.327 above average | — |
| Trea Turner (SS) | PHI | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 0 | 1 / 1 | -0.45 | 0.291 below average | — |
| CJ Abrams (2B) | WAS | 4 / 4 | 1 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -0.33 | 0.33 above average | — |
| Bryson Stott (3B) | PHI | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 2 / 1 | 0 / 1 | -0.14 | 0.327 above average | — |
| J.T. Realmuto (C) | PHI | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 2 / 1 | -0.14 | 0.323 above average | — |
| Abimelec Ortiz (1B) | WAS | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 2 / 1 | -0.14 | 0.284 weak | — |
| Bryce Harper (RF) | PHI | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 2 / 1 | 1 / 1 | 1 / 1 | 0 | 0.385 elite | — |
| Dylan Crews (CF) | WAS | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.312 average | — |
| Nasim Nuñez (SS) | WAS | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.268 weak | — |
| José Tena (DH) | WAS | 4 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 3 / 1 | 0 | 0.293 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.191 | positive favors home; negative favors away |
| Recent form | -0.114 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.002 | positive favors home; negative favors away |
| Composite | -0.31 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 5.55-3.45 | 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.51 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by opposing_starter_is_elite, starter_quality_favours_the_other_side, 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 | 5.55-3.45 | 6-3 | 0.901 | 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 opposing_starter_is_elite, starter_quality_favours_the_other_side, 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 |
|---|---|---|---|---|
| WAS | Abimelec Ortiz | batter / 1B | deboosted | predicted_RBI 2.82 |
| PHI | J.T. Realmuto | batter / C | worse | predicted_AB -2.08 |
| PHI | Brandon Marsh | batter / LF | better | predicted_RBI 1.71 |
| WAS | Nasim Nuñez | batter / SS | worse | predicted_BB 1.63 |
| WAS | Keibert Ruiz | batter / C | better | predicted_SO 1.617 |
| WAS | José Tena | batter / DH | worse | predicted_AB 1.5 |
| PHI | Kyle Schwarber | batter / DH | deboosted | predicted_SO -1.469 |
| PHI | Justin Crawford | batter / CF | better | predicted_SO 1.436 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| 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_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 | PHI model-prediction batting totals differ from final simulation box score (H: current=8, sim=6; 2B: current=2, sim=3; R: current=4, sim=5; SO: current=7, sim=9; HBP: current=0, 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: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Alec Bohm: 2B current=1 box=0, HR current=0 box=1, R current=0 box=1, SO current=0 box=1; Bryson Stott: AB current=4 box=3, 2B current=0 box=1, RBI current=1 box=0, R current=0 box=1; Luis Arraez: H current=1 box=0, RBI current=1 box=0, SO current=0 box=1; J.T. Realmuto: AB current=3 box=2, H current=1 box=0, R current=1 box=0, BB current=0 box=1; Trea Turner: H current=1 box=0, 2B current=1 box=0, R current=1 box=0, HBP current=0 box=1; Kyle Schwarber: AB current=4 box=5, HR current=1 box=0, BB current=1 box=0, SO current=1 box=0; Brandon Marsh: H current=1 box=2, 2B current=0 box=1, RBI current=0 box=2, R current=0 box=1 | PHI |
| info | CURRENT_FINALIZED_MATCH_BOX | WAS model-prediction batting totals differ from final simulation box score (H: current=7, sim=5; 2B: current=2, sim=1; HR: current=1, sim=0; RBI: current=5, sim=4; BB: current=3, sim=5; SO: current=9, sim=5). | WAS |
| info | CURRENT_PLAYER_MATCH_BOX | WAS current finalized hitter lines are model predictions and differ from the simulation box score: CJ Abrams: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Daylen Lile: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; James Wood: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Dylan Crews: AB current=4 box=3, H current=1 box=2, R current=0 box=1, BB current=0 box=1; Abimelec Ortiz: H current=1 box=2, RBI current=1 box=3, R current=0 box=1, SO current=1 box=0; Nasim Nuñez: AB current=3 box=2, R current=0 box=1, BB current=0 box=2, SO current=1 box=0; José Tena: AB current=3 box=4, SO current=1 box=0; Jorbit Vivas: AB current=3 box=4, H current=1 box=0, BB current=1 box=0, SO current=1 box=0 | WAS |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
No large single-factor errors.
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| SD | Robbie Ray | 4 ER / 15 outs | 3 ER / 18 outs | -1 |
| COL | Mason Adams | 5 ER / 14 outs | 6 ER / 13 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
Robbie Ray (SD) threw 18 outs, 3 ER = 4.5 ERA against a projected 7.2 ERA (-2.7 ERA error)
Bullpen behind him: 0 ER over 3 outs.
The HOME lineup he faced produced 3 runs on 4 hits and 1 HR, against a projected 4 runs / 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
Mason Adams (COL) threw 13 outs, 6 ER = 12.46 ERA against a projected 9.64 ERA (2.82 ERA error) only 4 prior appearances in the covered season - the projection had little of his own record to stand on
Bullpen behind him: 0 ER over 9 outs.
The AWAY lineup he faced produced 9 runs on 13 hits and 2 HR, against a projected 5 runs / 9 hits (4 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| SD | Robbie Ray (Starter) | 18 / 15 | 4.5 / 7.2 | 3 / 4 | 3 / 5 | 1 / 1 | 2 / 3 | 2.96 | 6 / 4 | 3.91 | venue away: 4.35 vs 3.2 ERA (worse here) · opp run factor 1 (average) · 29 prior appearances this season |
| SD | Yuki Matsui (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0.45 | 1 / 1 | 0.98 | |
| COL | Mason Adams (Starter) | 13 / 14 | 12.46 / 9.64 | 6 / 5 | 8 / 5 | 1 / 1 | 3 / 1 | 2.33 | 1 / 4 | 5.59 | venue home: 5.79 vs 2.57 ERA (ok) · opp run factor 1 (average) · thin sample: 4 prior appearances this season (high uncertainty) |
| COL | Jimmy Herget (Middle Reliever (High Leverage)) | 6 / 3 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 0.54 | 0 / 0 | 0.89 | |
| COL | Juan Mejia (Middle Reliever) | 3 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0.72 | 3 / 0 | 0.95 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Ethan Salas (C) | SD | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 2 / 0 | 3 / 0 | 2 / 0 | 0 / 0 | 0 / 1 | 2.33 | 0.178 weak | good day |
| Cole Carrigg (CF) | COL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -1.73 | 0.313 average | no signal |
| Dustin Harris (RF) | SD | 4 / 4 | 2 / 1 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 1 / 0 | 1 / 0 | 0 / 0 | 1.42 | 0.336 above average | projection too low |
| Manny Machado (3B) | SD | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | -1.26 | 0.334 above average | bad day |
| Fernando Tatis Jr. (DH) | SD | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | -1.11 | 0.376 elite | bad day |
| Jackson Merrill (CF) | SD | 5 / 4 | 3 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 0 | 2 / 1 | 0.63 | 0.349 elite | projection too low |
| Kyle Karros (3B) | COL | 3 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 2 / 1 | 1 / 1 | 1 / 1 | 0 / 1 | 0.62 | 0.342 elite | projection too low |
| Jake Cronenworth (2B) | SD | 5 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0.47 | 0.269 weak | — |
| Samad Taylor (LF) | SD | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 2 / 1 | 0 / 0 | 0 / 1 | 0.47 | 0.307 average | — |
| Adael Amador (DH) | COL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 0 | 2 / 0 | -0.47 | 0.257 weak | — |
| Troy Johnston (1B) | COL | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 2 / 0 | -0.47 | 0.325 above average | — |
| Jake McCarthy (LF) | COL | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 0 | 1 / 1 | -0.45 | 0.326 above average | — |
| Jordan Beck (RF) | COL | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0.33 | 0.254 weak | — |
| Ty France (1B) | SD | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0.31 | 0.333 above average | — |
| Xander Bogaerts (SS) | SD | 2 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 2 / 1 | 0 / 1 | -0.14 | 0.32 average | — |
| Braxton Fulford (C) | COL | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | -0.14 | 0.208 weak | — |
| Connor Norby (2B) | COL | 3 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0 / 1 | -0.02 | 0.307 average | — |
| Ezequiel Tovar (SS) | COL | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.28 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -1.282 | positive favors home; negative favors away |
| Recent form | -1.166 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.001 | positive favors home; negative favors away |
| Composite | -1.358 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 5.53-4.87 | n/a | Base ML historical model prediction |
| variance_applied | 6-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 7-5 | 0.53 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 7-5 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 7-5 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 7-5 | n/a | Capped at max 12 realistic runs |
| simulation_result | 7-5 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 5.53-4.87 | 6-5 | 0.335 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 6-5 | 7-5 | 1 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 7-5 | 7-5 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 7-5 | 7-5 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 7-5 | 7-5 | -0 | Capped at max 12 realistic runs |
| simulation_result | 7-5 | 7-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 | Ethan Salas | batter / C | worse | predicted_H 2.87 |
| COL | Adael Amador | batter / DH | deboosted | predicted_RBI 2.294 |
| SD | Jackson Merrill | batter / CF | better | predicted_RBI 2.09 |
| COL | Braxton Fulford | batter / C | worse | predicted_AB 1.5 |
| COL | Jake McCarthy | batter / LF | worse | predicted_AB -1.32 |
| SD | Manny Machado | batter / 3B | better | predicted_RBI 1.31 |
| SD | Xander Bogaerts | batter / SS | better | predicted_H 1.21 |
| SD | Jake Cronenworth | batter / 2B | worse | predicted_H 1.21 |
| 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 | 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_FINALIZED_MATCH_BOX | COL model pitcher projections differ from final simulation pitching box score (H: current=10, sim=12; ER: current=6, sim=7). | COL |
| info | CURRENT_FINALIZED_MATCH_BOX | COL model-prediction batting totals differ from final simulation box score (AB: current=32, sim=33; H: current=9, sim=6; 2B: current=2, sim=1; R: current=4, sim=5). | COL |
| info | CURRENT_PLAYER_MATCH_BOX | COL current finalized hitter lines are model predictions and differ from the simulation box score: Cole Carrigg: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Adael Amador: AB current=4 box=3, HR current=0 box=1, RBI current=1 box=3, BB current=0 box=1; Troy Johnston: AB current=3 box=4, RBI current=1 box=0, R current=0 box=1, SO current=0 box=1; Jordan Beck: H current=1 box=0, BB current=0 box=1, SO current=1 box=0; Braxton Fulford: AB current=3 box=4, H current=1 box=0, SO current=1 box=2; Connor Norby: AB current=4 box=3, H current=1 box=0, SO current=1 box=0; Jake McCarthy: H current=1 box=2, RBI current=1 box=2; Kyle Karros: 2B current=1 box=0, RBI current=1 box=0, BB current=1 box=0, SO current=1 box=0 | COL |
| info | CURRENT_FINALIZED_MATCH_BOX | SD model-prediction batting totals differ from final simulation box score (AB: current=34, sim=38; H: current=9, sim=12; RBI: current=5, sim=7; R: current=5, sim=7; BB: current=3, sim=1; SO: current=8, sim=5; SF: current=0, sim=1). | SD |
| info | CURRENT_PLAYER_MATCH_BOX | SD current finalized hitter lines are model predictions and differ from the simulation box score: Fernando Tatis Jr.: AB current=4 box=5, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Dustin Harris: H current=1 box=0, RBI current=1 box=0, R current=0 box=1, BB current=0 box=1; Xander Bogaerts: H current=1 box=2, 2B current=0 box=1, RBI current=0 box=1, BB current=1 box=0; Jackson Merrill: H current=1 box=2, 2B current=1 box=0, HR current=0 box=1, RBI current=1 box=3; Manny Machado: AB current=4 box=5, H current=1 box=2, 2B current=0 box=1, HR current=1 box=0; Ty France: AB current=4 box=5, H current=1 box=0, RBI current=1 box=0, SO current=1 box=2; Jake Cronenworth: H current=1 box=2, R current=0 box=1; Samad Taylor: RBI current=0 box=1, SO current=1 box=0, SF current=0 box=1 | SD |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
No large single-factor errors.
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| SEA | George Kirby | 1 ER / 17 outs | 2 ER / 13 outs | 1 |
| LAA | Yusei Kikuchi | 4 ER / 14 outs | 4 ER / 13 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:
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
George Kirby (SEA) threw 13 outs, 2 ER = 4.15 ERA against a projected 1.59 ERA (2.56 ERA error)
Bullpen behind him: 0 ER over 5 outs.
The HOME lineup he faced produced 2 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
Yusei Kikuchi (LAA) threw 13 outs, 4 ER = 8.31 ERA against a projected 7.71 ERA (0.6 ERA error) only 11 prior appearances in the covered season - the projection had little of his own record to stand on
Bullpen behind him: 0 ER over 0 outs.
The AWAY lineup he faced produced 7 runs on 9 hits and 0 HR, against a projected 4 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| SEA | George Kirby (Starter) | 13 / 17 | 4.15 / 1.59 | 2 / 1 | 5 / 6 | 0 / 1 | 5 / 1 | 1.61 | 5 / 6 | 4.75 | venue away: 5.53 vs 3.27 ERA (worse here) · opp run factor 0.96 (weak) · 28 prior appearances this season |
| SEA | Andrés Muñoz (Closer) | 3 / 3 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 0 | 0 / 1 | 0.49 | 1 / 0 | 1.47 | |
| SEA | José A. Ferrer (Setup Man) | 2 / 2 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0.25 | 1 / 2 | 0.57 | |
| LAA | Yusei Kikuchi (Starter) | 13 / 14 | 8.31 / 7.71 | 4 / 4 | 5 / 4 | 0 / 1 | 5 / 2 | 1.91 | 4 / 6 | 5.14 | venue home: 3 vs 5.66 ERA (ok) · opp run factor 1.04 (weak) · 11 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 | 5 / 4 | 4 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 1.41 | 0.264 weak | good day |
| Julio Rodríguez (CF) | SEA | 4 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 0 | 1 / 1 | 1.11 | 0.335 above average | projection too low |
| Taylor Ward (RF) | SEA | 5 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 3 / 1 | -0.8 | 0.333 above average | bad day |
| Moisés Ballesteros (C) | LAA | 3 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 0 / 1 | 0.8 | 0.3 below average | good day |
| Cal Raleigh (C) | SEA | 3 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 3 / 1 | 1 / 0 | 1 / 1 | 1 / 1 | 0.78 | 0.313 average | no signal |
| Josh Naylor (1B) | SEA | 5 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.78 | 0.313 average | no signal |
| Vaughn Grissom (1B) | LAA | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 0 | 2 / 1 | -0.78 | 0.306 average | no signal |
| Randy Arozarena (LF) | SEA | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 3 / 1 | 2 / 1 | 1 / 1 | -0.6 | 0.346 elite | bad day |
| Cole Young (2B) | SEA | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 2 / 1 | -0.47 | 0.314 average | — |
| Wade Meckler (LF) | LAA | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 2 / 1 | -0.47 | 0.313 average | — |
| Christian Moore (DH) | LAA | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 3 / 1 | -0.47 | 0.222 weak | — |
| Adam Frazier (2B) | LAA | 4 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0.261 weak | — |
| Zach Neto (SS) | LAA | 3 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 1 | 1 / 2 | -0.46 | 0.311 average | — |
| Dominic Canzone (DH) | SEA | 3 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 0 | 2 / 0 | 0 / 1 | 0.35 | 0.353 elite | — |
| J.P. Crawford (SS) | SEA | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 / 1 | 0 / 1 | -0.33 | 0.323 above average | — |
| Weston Wilson (3B) | SEA | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0.33 | 0.264 weak | — |
| Mike Trout (CF) | LAA | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 2 / 1 | 1 / 1 | -0.14 | 0.378 elite | — |
| Josh Lowe (RF) | LAA | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.288 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.108 | positive favors home; negative favors away |
| Recent form | -0.014 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.075 | positive favors home; negative favors away |
| Composite | -0.407 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.22-4.02 | n/a | Base ML historical model prediction |
| variance_applied | 4-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 0.505 | 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.22-4.02 | 4-4 | -0.201 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-4 | 5-4 | 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 | 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 |
|---|---|---|---|---|
| SEA | Cal Raleigh | batter / C | worse | predicted_AB -2.39 |
| LAA | Moisés Ballesteros | batter / C | better | predicted_AB 1.968 |
| LAA | Wade Meckler | batter / LF | worse | predicted_AB 1.84 |
| SEA | J.P. Crawford | batter / SS | better | predicted_RBI 1.57 |
| LAA | Denzer Guzman | batter / 3B | worse | predicted_AB -1.522 |
| LAA | Adam Frazier | batter / 2B | worse | predicted_AB 1.5 |
| SEA | Julio Rodríguez | batter / CF | worse | predicted_AB -1.41 |
| LAA | Josh Lowe | batter / RF | better | predicted_H 1.392 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| 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_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_FINALIZED_MATCH_BOX | LAA model-prediction batting totals differ from final simulation box score (AB: current=33, sim=35; H: current=8, sim=9; 2B: current=1, sim=3; 3B: current=0, sim=1; HR: current=1, sim=2; BB: current=3, sim=4; SO: current=10, sim=9; 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: Wade Meckler: AB current=4 box=5, H current=1 box=2, BB current=1 box=0; Vaughn Grissom: 2B current=1 box=0, HR current=0 box=1, BB current=0 box=1, SO current=1 box=0; Moisés Ballesteros: AB current=4 box=5, H current=1 box=2, 2B current=0 box=1, HR current=0 box=1; Josh Lowe: H current=1 box=2, 2B current=0 box=1, RBI current=0 box=1, R current=0 box=1; Christian Moore: H current=1 box=0, BB current=0 box=1; Adam Frazier: AB current=3 box=4, H current=0 box=1, 2B current=0 box=1; Mike Trout: AB current=4 box=5, H current=1 box=0, R current=1 box=0, BB current=1 box=0; Denzer Guzman: AB current=4 box=2, H current=1 box=0, RBI current=1 box=0, BB current=0 box=1 | LAA |
| info | CURRENT_FINALIZED_MATCH_BOX | SEA model-prediction batting totals differ from final simulation box score (AB: current=34, sim=32; H: current=8, sim=5; 2B: current=1, sim=3; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=4, sim=3; SO: current=9, sim=11). | SEA |
| info | CURRENT_PLAYER_MATCH_BOX | SEA current finalized hitter lines are model predictions and differ from the simulation box score: Randy Arozarena: RBI current=1 box=2, BB current=1 box=0, SO current=1 box=2; Cal Raleigh: AB current=4 box=2, H current=1 box=0, RBI current=1 box=0, R current=0 box=1; J.P. Crawford: 2B current=0 box=1, RBI current=0 box=2, BB current=1 box=0, SO current=1 box=2; Taylor Ward: AB current=3 box=4, 2B current=0 box=1, R current=0 box=1, BB current=1 box=0; Dominic Canzone: H current=1 box=0, 2B current=1 box=0, RBI 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; Cole Young: H current=1 box=0, R current=1 box=0; Josh Naylor: H current=1 box=2, 2B current=0 box=1, RBI current=0 box=1, R current=0 box=1 | SEA |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| SF | Anthony Molina | 2 ER / 14 outs | 0 ER / 17 outs | -2 |
| STL | Matthew Liberatore | 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: Matthew Liberatore (STL) posted 1.50 ERA vs projected 7.20 (1 ER in 18 outs); he faced a strong offense (opponent run factor 1.09, bucket weak).
What to do: Consider raising context.opponent_strength_weight; validate across the rolling window before promotion.
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Anthony Molina (SF) threw 17 outs, 0 ER = 0 ERA against a projected 3.86 ERA (-3.86 ERA error) only 7 prior appearances in the covered season - the projection had little of his own record to stand on
Bullpen behind him: 2 ER over 8 outs.
The HOME lineup he faced produced 5 runs on 5 hits and 0 HR, against a projected 4 runs / 8 hits (1 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Matthew Liberatore (STL) threw 18 outs, 1 ER = 1.5 ERA against a projected 7.2 ERA (-5.7 ERA error)
Bullpen behind him: 1 ER over 9 outs.
The AWAY lineup he faced produced 4 runs on 12 hits and 0 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
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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| SF | Anthony Molina (Starter) | 17 / 14 | 0 / 3.86 (-3.86) | 0 / 2 | 2 / 4 | 0 / 1 | 1 / 3 | 0.96 | 6 / 6 | 6.08 | venue away: 2.7 vs 21 ERA (ok) · opp run factor 1.02 (average) · 7 prior appearances this season |
| SF | Carson Seymour (Middle Reliever (High Leverage)) | 2 / 3 | 0 / 9 (-9.00) | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | 0.61 | 0 / 1 | 0.77 | |
| SF | Dylan Smith (Closer) | 2 / 6 | 27 / 0 (+27.00) | 2 / 0 | 2 / 0 | 0 / 0 | 2 / 0 | 0.49 | 1 / 2 | 1.07 | |
| SF | Trent Harris (Setup Man) | 4 / 0 | 0 / n/a | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0.31 | 2 / 0 | 1.29 | |
| STL | Matthew Liberatore (Starter) | 18 / 15 | 1.5 / 7.2 (-5.70) | 1 / 4 | 6 / 6 | 0 / 1 | 3 / 0 | 1.56 | 2 / 7 | 5.9 | venue home: 5.77 vs 5.27 ERA (ok) · opp run factor 1.09 (weak) · 29 prior appearances this season |
| STL | Justin Bruihl (Middle Reliever (High Leverage)) | 2 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0.31 | 0 / 1 | 0.87 | |
| STL | Riley O'Brien (Closer) | 3 / 3 | 9 / 9 | 1 / 1 | 2 / 1 | 1 / 1 | 1 / 0 | 0.48 | 0 / 0 | 1.14 | |
| STL | Gordon Graceffo (Middle Reliever) | 4 / 0 | 0 / n/a | 0 / 0 | 2 / 0 | 0 / 0 | 0 / 0 | 0.61 | 1 / 1 | 1.75 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Joshua Baez (LF) | STL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -1.4 | 0.303 below average | projection too high |
| Bryce Eldridge (1B) | SF | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | 1 / 1 | -1.07 | 0.359 elite | bad day |
| Andrew Knizner (C) | SF | 4 / 3 | 3 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0.94 | 0.299 below average | good day |
| Jonah Cox (CF) | SF | 4 / 4 | 3 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 1 / 1 | 1 / 1 | 0.94 | 0.273 weak | good day |
| JJ Wetherholt (2B) | STL | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | -0.8 | 0.35 elite | bad day |
| Scott Bandura (RF) | SF | 4 / 3 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 0.78 | 0.136 weak | good day |
| Shay Whitcomb (2B) | SF | 5 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.268 weak | — |
| Nathan Church (CF) | STL | 5 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0.47 | 0.289 below average | — |
| Jung Hoo Lee (DH) | SF | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | -0.45 | 0.315 average | — |
| Turner Hill (LF) | SF | 5 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 0 / 1 | -0.33 | 0.328 above average | — |
| Leonardo Bernal (DH) | STL | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 1 | 2 / 1 | -0.33 | 0.378 elite | — |
| Alec Burleson (1B) | STL | 5 / 4 | 1 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 2 / 0 | -0.33 | 0.376 elite | — |
| Pedro Pagés (C) | STL | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 0.33 | 0.267 weak | — |
| Nolan Gorman (3B) | STL | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 0 / 1 | 0.19 | 0.279 weak | — |
| Jordan Walker (RF) | STL | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 2 / 0 | 2 / 1 | -0.12 | 0.344 elite | — |
| Christian Koss (SS) | SF | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 1 / 1 | 0 | 0.257 weak | — |
| Brett Harris (3B) | SF | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.293 below average | — |
| Thomas Saggese (SS) | STL | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 0 / 0 | 1 / 1 | 0 | 0.319 average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.24 | positive favors home; negative favors away |
| Recent form | -0.454 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.068 | positive favors home; negative favors away |
| Composite | -0.311 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.87-4.36 | n/a | Base ML historical model prediction |
| variance_applied | 4-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 0.514 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by winner_starter_is_below_average, 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 | 3.87-4.36 | 4-4 | 0.49 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-4 | 5-4 | 1 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by winner_starter_is_below_average, 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 |
|---|---|---|---|---|
| STL | Matthew Liberatore | pitcher / Starter | worse | predicted_H 3 |
| STL | Riley O'Brien | pitcher / Closer | better | predicted_H -3 |
| SF | Andrew Knizner | batter / C | better | predicted_RBI 2.73 |
| SF | Brett Harris | batter / 3B | worse | predicted_AB 2.5 |
| SF | Shay Whitcomb | batter / 2B | better | predicted_AB 2.375 |
| STL | Jordan Walker | batter / RF | worse | predicted_AB -2.29 |
| SF | Scott Bandura | batter / RF | better | predicted_SO -2.083 |
| SF | Bryce Eldridge | batter / 1B | better | predicted_H 2.019 |
| 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 pitcher projections differ from final simulation pitching box score (H: current=7, sim=8; BB: current=4, sim=5). | SF |
| info | CURRENT_FINALIZED_MATCH_BOX | SF model-prediction batting totals differ from final simulation box score (AB: current=31, sim=37; H: current=8, sim=7; HR: current=1, sim=2; RBI: current=4, sim=5; R: current=4, sim=5; SO: current=8, sim=12; HBP: current=0, sim=1). | SF |
| info | CURRENT_PLAYER_MATCH_BOX | SF current finalized hitter lines are model predictions and differ from the simulation box score: Bryce Eldridge: H current=1 box=3, SO current=1 box=0; Jung Hoo Lee: AB current=4 box=5, R current=0 box=1, SO current=0 box=2; Shay Whitcomb: AB current=4 box=5, RBI current=1 box=0, R current=0 box=1, SO current=1 box=2; Turner Hill: AB current=3 box=4, R current=0 box=1, BB current=1 box=0; Scott Bandura: AB current=3 box=4, R current=1 box=0, 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=2; Andrew Knizner: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=3, R current=0 box=1; Jonah Cox: AB current=4 box=2, H current=1 box=0, RBI current=1 box=0, R current=1 box=0 | SF |
| info | CURRENT_FINALIZED_MATCH_BOX | STL model-prediction batting totals differ from final simulation box score (AB: current=32, sim=37; 2B: current=2, sim=0; HR: current=1, sim=3; BB: current=3, sim=5; SO: current=7, sim=10; SF: current=0, sim=1). | STL |
| info | CURRENT_PLAYER_MATCH_BOX | STL current finalized hitter lines are model predictions and differ from the simulation box score: JJ Wetherholt: H current=1 box=0, R current=1 box=0; Leonardo Bernal: AB current=4 box=5, H current=1 box=2, HR current=0 box=2, RBI current=1 box=2; Joshua Baez: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Thomas Saggese: AB current=3 box=5, H current=1 box=2, R current=0 box=1, SO current=1 box=2; Nolan Gorman: AB current=3 box=4, H current=1 box=0, BB current=0 box=1; Jordan Walker: AB current=4 box=2, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Alec Burleson: AB current=4 box=5, H current=1 box=2, 2B current=1 box=0, RBI current=1 box=0; Nathan Church: AB current=3 box=4, SO current=0 box=1 | STL |
| 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 20260915. 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.2426 | 0.2391 | -0.003503 | improved |
| accuracy | 0.6 | 0.6167 | +0.0167 | improved |
| team_run_mae | 2.5542 | 2.5458 | -0.0084 | improved |
| total_run_mae | 3.7917 | 3.625 | -0.1667 | improved |
| calibration_error | 0.084 | 0.085 | +0.001 | regressed |
| starter_er_mae | 1.7739 | 1.7333 | -0.0406 | improved |
| starter_outs_mae | 3.2874 | 3.2292 | -0.0582 | improved |