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_20260920.json | 380574 |
| forensic deep audit | loaded | probability, provenance, starter and decision contracts | /app/output/reports/PREDICTION_SYSTEM_DEEP_AUDIT_20260920.json | 241166 |
| continuous learning | loaded | pipeline-stage quality, calibration, probability lineage, score distribution, and official starter comparisons | /app/output/learning/continuous_learning_daily_20260920.json | 2533568 |
| detailed report | loaded | full game and simulation rendering | /app/output/reports/detailed_20260920.html | 357259 |
| ultra detailed player audit | loaded | player-level prediction trace | /app/output/reports/20260920_ultra_detailed_player_audit.html | 32696586 |
| structural audit | loaded | all invariant findings | /app/output/reports/audit_report_20260920.html | 1904415 |
| integrity revision audit | missing | post-Luna remediation proof for immutable revision artifacts | /app/output/reports/audit_report_20260920_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 | artifact_integrity | Canonical artifact warning requires reconciliation structural audit totals: {'critical': 0, 'error': 0, 'warning': 2, 'info': 116} | slate-wide | Do thisFix the flagged stat or presentation contract before treating this slate as clean evidence. Don't concludeA warning flags a display or contract issue; it does not prove the model picked the wrong side. |
| HIGH | pipeline_stages | An intermediate stage materially degraded winner direction historical_ml → variance_applied changed winner accuracy by -0.2000 (-3 hits) | MIA@SD, MIN@LAA, PHI@NYM | 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.3184 across 15 games | ATL@HOU, BOS@TB, CHC@CIN, DET@CHW, KC@PIT, MIA@SD, MIL@BAL, MIN@LAA, NYY@ARI, OAK@CLE, PHI@NYM, SEA@COL, SF@LAD, TOR@TEX, WAS@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.0082/0.0273/0.0092 | ATL@HOU, BOS@TB, CHC@CIN, DET@CHW, KC@PIT, MIA@SD, MIL@BAL, MIN@LAA, NYY@ARI, OAK@CLE, PHI@NYM, SEA@COL, SF@LAD, TOR@TEX, WAS@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. |
| INFO | coverage | Every settled game received structural QA 15/15 games structurally audited | ATL@HOU, BOS@TB, CHC@CIN, DET@CHW, KC@PIT, MIA@SD, MIL@BAL, MIN@LAA, NYY@ARI, OAK@CLE, PHI@NYM, SEA@COL, SF@LAD, TOR@TEX, WAS@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 10 material movement(s), all explained by named score-coherence and/or recency transformations | ATL@HOU, CHC@CIN, DET@CHW, KC@PIT, MIA@SD, NYY@ARI, OAK@CLE, PHI@NYM, SEA@COL, SF@LAD | 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@HOU, BOS@TB, CHC@CIN, DET@CHW, KC@PIT, MIA@SD, MIL@BAL, MIN@LAA, NYY@ARI, OAK@CLE, PHI@NYM, SEA@COL, SF@LAD, TOR@TEX, WAS@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 |
|---|---|---|---|---|
| pipeline_winner_instability | 3 consecutive · 5 in window | code/diagnostic — no parameter | preserve base_ml_winner before integer rounding (code fix) | pipeline_winner_instability has persisted 3 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. |
| simulation_inert_on_slate | 11 consecutive · 11 in window | simulation.allow_score | confirm the simulation module is running, not silently no-oping | simulation_inert_on_slate has persisted 11 consecutive slates; this is no longer single-slate noise. Treat it as an actionable pattern and raise the code/diagnostic action named; do not force a parameter move. |
| weak_run_model_signal | 11 consecutive · 11 in window | training.xgb.n_estimators, training.xgb.max_depth, training.xgb.learning_rate | investigate features/target via isolated training backtest (manual) | weak_run_model_signal has persisted 11 consecutive slates; this is no longer single-slate noise. Treat it as an actionable pattern and raise the code/diagnostic action named; do not force a parameter move. |
| Finding | Consecutive slates | Incidence | Present now | Fix type |
|---|---|---|---|---|
| high_raw_probability_cluster | 0 | 2/11 | no | param |
| pipeline_winner_instability | 3 | 5/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 | 2 | 7/11 | yes | param |
| weak_run_model_signal | 11 | 11/11 | yes | code/diagnostic |
| Metric | Direction | Series (old → new) |
|---|---|---|
| winner_accuracy | flat | [0.6, 0.6667, 0.5333, 0.6, 0.7, 0.4, 0.6667, 0.4444, 0.6667, 0.7333, 0.6] |
| weighted_calibration_error | regressing | [0.1171, 0.2091, 0.1711, 0.0827, 0.2812, 0.2795, 0.1661, 0.1016, 0.1247, 0.3458, 0.3184] |
| margin_bias | improving | [-1.0, -2.933, -2.667, -1.8, -0.4, -1.667, -1.133, -2.111, -2.0, -0.667, -1.533] |
| team_run_error_on_losses | regressing | [6.5, 5.0, 6.143, 5.0, 6.333, 5.556, 6.4, 3.6, 5.2, 6.5, 6.5] |
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 | 12/15 | 80% | 2.465 | 2.744 | 3.425 |
| variance_applied | 9/15 | 60% | 2.5 | 2.867 | 3.533 |
| enhanced_prediction | 9/15 | 60% | 2.867 | 3.2 | 3.467 |
| embedded_savant_run_environment | 9/15 | 60% | 2.867 | 3.467 | 3.733 |
| fundamental_edge_target_review | 9/15 | 60% | 2.9 | 3.533 | 3.8 |
| capped_target | 9/15 | 60% | 2.9 | 3.533 | 3.8 |
| simulation_result | 9/15 | 60% | 2.9 | 3.533 | 3.8 |
| published_final | 9/15 | 60% | 2.9 | 3.533 | 3.8 |
| Transition | Δ accuracy | Δ hits | Δ team-run MAE | Δ margin MAE | Games whose winner/tie changed |
|---|---|---|---|---|---|
| historical_ml → variance_applied | -0.2 | -3 | 0.0352 | 0.1085 | MIA@SD: SD → TIE; MIN@LAA: MIN → TIE; NYY@ARI: NYY → TIE; PHI@NYM: PHI → TIE |
| variance_applied → enhanced_prediction | 0 | 0 | 0.3667 | -0.0666 | ATL@HOU: HOU → ATL; MIA@SD: TIE → SD; MIN@LAA: TIE → LAA; NYY@ARI: TIE → NYY; PHI@NYM: TIE → NYM; TOR@TEX: TOR → TEX; WAS@STL: STL → WAS |
| enhanced_prediction → embedded_savant_run_environment | 0 | 0 | 0 | 0.2666 | WAS@STL: WAS → TIE |
| embedded_savant_run_environment → fundamental_edge_target_review | 0 | 0 | 0.0333 | 0.0667 | WAS@STL: TIE → WAS |
| 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@HOU | hit | 0.5664 | 0.6219 | 0.6219 | 0.6219 | 0.58 | score coherence followed by matchup-recency guardrail |
| BOS@TB | hit | 0.5964 | 0.5716 | 0.5716 | 0.5716 | 0.5517 | score coherence followed by matchup-recency guardrail |
| CHC@CIN | hit | 0.6623 | 0.7074 | 0.7074 | 0.7074 | 0.56 | score coherence followed by matchup-recency guardrail |
| DET@CHW | miss | 0.6209 | 0.617 | 0.617 | 0.5964 | 0.56 | score coherence followed by matchup-recency guardrail |
| KC@PIT | hit | 0.6997 | 0.6257 | 0.6257 | 0.6008 | 0.5728 | score coherence followed by matchup-recency guardrail |
| MIA@SD | hit | 0.6539 | 0.689 | 0.689 | 0.6689 | 0.58 | score coherence followed by matchup-recency guardrail |
| MIL@BAL | hit | 0.8086 | 0.6292 | 0.6292 | 0.6292 | 0.6292 | published probability matches the calibrated/governed value |
| MIN@LAA | miss | 0.5 | 0.5074 | 0.5074 | 0.5074 | 0.5054 | published probability matches the calibrated/governed value |
| NYY@ARI | miss | 0.5543 | 0.6152 | 0.6152 | 0.6152 | 0.5449 | score coherence followed by matchup-recency guardrail |
| OAK@CLE | hit | 0.7332 | 0.7084 | 0.7084 | 0.7084 | 0.58 | score coherence followed by matchup-recency guardrail |
| PHI@NYM | miss | 0.5446 | 0.5386 | 0.5386 | 0.5386 | 0.5173 | score coherence followed by matchup-recency guardrail |
| SEA@COL | hit | 0.6611 | 0.6741 | 0.6741 | 0.6615 | 0.56 | score coherence followed by matchup-recency guardrail |
| SF@LAD | hit | 0.7823 | 0.686 | 0.686 | 0.6674 | 0.58 | score coherence followed by matchup-recency guardrail |
| TOR@TEX | miss | 0.5 | 0.5594 | 0.5594 | 0.5594 | 0.5505 | score coherence followed by matchup-recency guardrail |
| WAS@STL | miss | 0.5 | 0.5296 | 0.5296 | 0.5296 | 0.5125 | score coherence followed by matchup-recency guardrail |
One blown start is noise. The same failure repeating across the slate is a model problem. These are the repeats.
| Sides analyzed | Broke on pitching | Broke on offense | Both | Variance | Mean starter ERA error | Mean lineup runs vs proj |
|---|---|---|---|---|---|---|
| 30 | 2 | 10 | 6 | 12 | -0.89 | -1 |
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 |
|---|---|---|---|---|---|---|---|
| MIN@LAA | 0.487 | 0.498 | away | 0.505 | home | yes | miss |
| TOR@TEX | 0.352 | 0.458 | away | 0.55 | home | yes | miss |
| WAS@STL | 0.59 | 0.528 | home | 0.488 | away | yes | miss |
Blend side survived on 12 of 15 games; the blend flagged a winner change on 3.
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.82 over 12 slates (sign shared by 0.58 of them, z = 1.39).
starters were hit harder than projected: the run model under-credits opposing offenses.
Hold: no change: this bias is not separable from slate-to-slate noise yet
7 of 12 slates share the sign, mean 0.82 +/- 0.59 standard error: not separable from noise
lineup runs actual minus projected
Mean -0.12 over 12 slates (sign shared by 0.58 of them, z = -0.60).
lineups scored below projection: the run environment is set too high.
Hold: no change: this bias is not separable from slate-to-slate noise yet
7 of 12 slates share the sign, mean -0.12 +/- 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 |
|---|---|---|---|---|---|---|
| 20260919 | 15 | 0.733 | 1.36 | -0.10 | 8 | 7 |
| 20260918 | 15 | 0.667 | 3.95 | 0.30 | 6 | 5 |
| 20260917 | 9 | 0.444 | 2.16 | -0.22 | 2 | 3 |
| 20260916 | 15 | 0.667 | 2.09 | -0.23 | 4 | 5 |
| 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 |
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@HOU | 2 | 2 | 0 |
| BOS@TB | 1 | 4 | -3 |
| CHC@CIN | 4 | 8 | -4 |
| DET@CHW | 1 | 7 | -6 |
| KC@PIT | 1 | 1 | 0 |
| MIA@SD | 2 | 4 | -2 |
| MIL@BAL | 6 | 3 | 3 |
| MIN@LAA | 1 | 8 | -7 |
| NYY@ARI | 2 | 4 | -2 |
| OAK@CLE | 3 | 1 | 2 |
| PHI@NYM | 1 | 5 | -4 |
| SEA@COL | 3 | 1 | 2 |
| SF@LAD | 4 | 2 | 2 |
| TOR@TEX | 2 | 5 | -3 |
| WAS@STL | 1 | 2 | -1 |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| ATL | Martín Pérez | 2 ER / 17 outs | 1 ER / 13 outs | -1 |
| HOU | Hunter Brown | 4 ER / 17 outs | 0 ER / 15 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: Hunter Brown (HOU) posted 0.00 ERA vs projected 6.35 (0 ER in 15 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
Martín Pérez (ATL) threw 13 outs, 1 ER = 2.08 ERA against a projected 3.18 ERA (-1.1 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 2 runs on 8 hits and 2 HR, against a projected 4 runs / 7 hits (-2 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Hunter Brown (HOU) threw 15 outs, 0 ER = 0 ERA against a projected 6.35 ERA (-6.35 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The AWAY lineup he faced produced 4 runs on 6 hits and 1 HR, against a projected 5 runs / 7 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| ATL | Martín Pérez (Starter) | 13 / 17 | 2.08 / 3.18 | 1 / 2 | 6 / 4 | 1 / 0 | 2 / 2 | 2.6 | 2 / 5 | 3.43 | venue away: 4.53 vs 1.97 ERA (worse here) · opp run factor 1 (average) · 29 prior appearances this season |
| HOU | Hunter Brown (Starter) | 15 / 17 | 0 / 6.35 (-6.35) | 0 / 4 | 3 / 6 | 0 / 0 | 2 / 1 | 2.21 | 10 / 5 | 6.58 | venue home: 3.55 vs 3.26 ERA (ok) · opp run factor 1.03 (strong) · 18 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Mike Yastrzemski (LF) | ATL | 4 / 3 | 2 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 3 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 1.87 | 0.307 average | no signal |
| Matt Olson (1B) | ATL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | -1.73 | 0.353 elite | bad day |
| Yainer Diaz (C) | HOU | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 1.4 | 0.303 below average | good day |
| Brewer Hicklen (RF) | ATL | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 3 / 1 | -0.8 | 0.365 elite | bad day |
| Yordan Alvarez (LF) | HOU | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -0.79 | 0.442 elite | bad day |
| Jose Altuve (DH) | HOU | 4 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 1 | 0 / 1 | 1 / 1 | 0.76 | 0.273 weak | good day |
| Isaac Paredes (3B) | HOU | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 0 | -0.47 | 0.322 above average | — |
| Christian Walker (1B) | HOU | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 2 / 1 | -0.47 | 0.299 below average | — |
| Brice Matthews (CF) | HOU | 4 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0.47 | 0.26 weak | — |
| Cam Smith (RF) | HOU | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 3 / 1 | -0.47 | 0.317 average | — |
| Ronald Acuña Jr. (DH) | ATL | 3 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 1 | -0.31 | 0.369 elite | — |
| Mauricio Dubón (3B) | ATL | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 2 / 1 | 0.31 | 0.307 average | — |
| Michael Harris II (CF) | ATL | 2 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 2 / 0 | 0 / 1 | 0.19 | 0.339 above average | — |
| Drake Baldwin (C) | ATL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 2 / 1 | 0 | 0.368 elite | — |
| Ozzie Albies (2B) | ATL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 0 / 0 | 1 / 1 | 0 | 0.28 weak | — |
| Ha-Seong Kim (SS) | ATL | 4 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 | 0.221 weak | — |
| Jeremy Peña (SS) | HOU | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 2 / 1 | 0 | 0.327 above average | — |
| Nick Allen (2B) | HOU | 4 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 | 0.25 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -1.058 | positive favors home; negative favors away |
| Recent form | -1.026 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.032 | positive favors home; negative favors away |
| Composite | -1.27 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.14-4.63 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-3 | 0.58 | 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.14-4.63 | 4-5 | -0.513 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 5-3 | 3 | 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 |
|---|---|---|---|---|
| ATL | Drake Baldwin | batter / C | worse | predicted_AB -1.8 |
| ATL | Michael Harris II | batter / CF | worse | predicted_AB -1.67 |
| ATL | Mauricio Dubón | batter / 3B | better | predicted_RBI 1.521 |
| HOU | Nick Allen | batter / 2B | worse | predicted_AB 1.5 |
| ATL | Ozzie Albies | batter / 2B | worse | predicted_AB -1.43 |
| HOU | Isaac Paredes | batter / 3B | worse | predicted_SO 1.422 |
| ATL | Mike Yastrzemski | batter / LF | worse | predicted_AB 1.325 |
| HOU | Jeremy Peña | batter / SS | worse | predicted_H -1.27 |
| 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 | 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_FINALIZED_MATCH_BOX | ATL model-prediction batting totals differ from final simulation box score (AB: current=33, sim=34; 3B: current=0, sim=1; HR: current=1, sim=0; RBI: current=4, sim=5; BB: current=4, sim=1; SO: current=9, sim=13). | ATL |
| info | CURRENT_PLAYER_MATCH_BOX | ATL current finalized hitter lines are model predictions and differ from the simulation box score: Ronald Acuña Jr.: H current=1 box=2, 2B current=1 box=0, RBI current=1 box=0, BB current=1 box=0; Mauricio Dubón: 3B current=0 box=1, RBI current=0 box=2, R current=0 box=1, SO current=1 box=2; Drake Baldwin: BB current=1 box=0, SO current=1 box=0; Ozzie Albies: AB current=4 box=3, R current=1 box=0, BB current=0 box=1; Michael Harris II: R current=0 box=1; Matt Olson: 2B current=0 box=1, HR current=1 box=0, BB current=1 box=0; Ha-Seong Kim: SO current=1 box=2; Mike Yastrzemski: AB current=3 box=4, SO current=1 box=2 | ATL |
| info | CURRENT_FINALIZED_MATCH_BOX | HOU model pitcher projections differ from final simulation pitching box score (H: current=8, sim=7). | HOU |
| info | CURRENT_FINALIZED_MATCH_BOX | HOU model-prediction batting totals differ from final simulation box score (H: current=7, sim=6; 2B: current=1, sim=4; HR: current=1, sim=0; RBI: current=4, sim=3; R: current=4, sim=3; BB: current=4, sim=2). | HOU |
| info | CURRENT_PLAYER_MATCH_BOX | HOU current finalized hitter lines are model predictions and differ from the simulation box score: Yordan Alvarez: 2B current=0 box=1, HR current=1 box=0, BB current=1 box=0, SO current=1 box=0; Jose Altuve: H current=1 box=2, RBI current=0 box=1, BB current=1 box=0, SO current=1 box=0; Yainer Diaz: 2B current=0 box=1, RBI current=1 box=0, SO current=1 box=0; Jeremy Peña: H current=1 box=0, R current=1 box=0; Nick Allen: AB current=3 box=4, SO current=0 box=1; Isaac Paredes: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Christian Walker: 2B current=0 box=1, R current=0 box=1, BB current=1 box=0, SO current=1 box=2; Brice Matthews: AB current=3 box=2, H current=0 box=1, BB current=0 box=1, SO current=1 box=0 | HOU |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| BOS | Patrick Sandoval | 4 ER / 14 outs | 5 ER / 21 outs | 1 |
| TB | Griffin Jax | 3 ER / 15 outs | 0 ER / 15 outs | -3 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Griffin Jax (TB) posted 0.00 ERA vs projected 5.40 (0 ER in 15 outs); he faced a strong offense (opponent run factor 1.09, bucket average).
What to do: Consider raising context.opponent_strength_weight; validate across the rolling window before promotion.
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Patrick Sandoval (BOS) threw 21 outs, 5 ER = 6.43 ERA against a projected 7.71 ERA (-1.28 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 4 runs on 3 hits and 0 HR, against a projected 3 runs / 8 hits (1 runs vs projection).
No individual hitter beat his projection by a meaningful margin.
Verdict: offense: the lineup scored well below its projection
HOME pitching
Griffin Jax (TB) threw 15 outs, 0 ER = 0 ERA against a projected 5.4 ERA (-5.4 ERA error)
Bullpen behind him: 0 ER over 4 outs.
The AWAY lineup he faced produced 1 runs on 6 hits and 1 HR, against a projected 4 runs / 8 hits (-3 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| BOS | Patrick Sandoval (Starter) | 21 / 14 | 6.43 / 7.71 | 5 / 4 | 4 / 5 | 1 / 1 | 2 / 1 | 2.57 | 5 / 8 | 5.01 | venue away: 5.6 vs 4.45 ERA (worse here) · opp run factor 1.08 (average) · 12 prior appearances this season |
| TB | Griffin Jax (Starter) | 15 / 15 | 0 / 5.4 (-5.40) | 0 / 3 | 3 / 2 | 0 / 1 | 2 / 3 | 1.12 | 5 / 6 | 4.33 | venue home: 3.61 vs 3.14 ERA (ok) · opp run factor 1.09 (average) · 32 prior appearances this season |
| TB | Cole Sulser (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 9 (-9.00) | 0 / 1 | 0 / 2 | 0 / 0 | 0 / 0 | 0.19 | 0 / 1 | 0.77 | |
| TB | Kevin Kelly (Setup Man) | 1 / 2 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0.11 | 0 / 0 | 0.86 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Mickey Gasper (DH) | BOS | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 2 / 1 | -1.4 | 0.36 elite | bad day |
| Junior Caminero (3B) | TB | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | -1.26 | 0.364 elite | bad day |
| Trevor Story (SS) | BOS | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 0 | 0 / 0 | 1 / 1 | 0.93 | 0.253 weak | good day |
| Nick Sogard (1B) | BOS | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 2 / 1 | -0.8 | 0.312 average | no signal |
| Taylor Walls (SS) | TB | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | -0.8 | 0.251 weak | projection too high |
| Yandy Díaz (DH) | TB | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 0 / 0 | -0.78 | 0.347 elite | bad day |
| Adley Rutschman (C) | BOS | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -0.64 | 0.328 above average | bad day |
| Caleb Durbin (3B) | BOS | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 0.47 | 0.293 below average | — |
| Isiah Kiner-Falefa (2B) | BOS | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.301 below average | — |
| Ryan Vilade (1B) | TB | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.334 above average | — |
| Ben Williamson (2B) | TB | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.29 below average | — |
| Nick Fortes (C) | TB | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | -0.47 | 0.278 weak | — |
| Nate Eaton (RF) | BOS | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0.33 | 0.283 below average | — |
| Jarren Duran (CF) | BOS | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 0 / 1 | -0.14 | 0.298 below average | — |
| Roman Anthony (LF) | BOS | 4 / 4 | 2 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0.14 | 0.35 elite | — |
| Jonny DeLuca (CF) | TB | 4 / 4 | 1 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 2 / 1 | 1 / 0 | 0 / 0 | 2 / 1 | 0 | 0.26 weak | — |
| Chandler Simpson (LF) | TB | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 | 0.266 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.343 | positive favors home; negative favors away |
| Recent form | 0.634 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.008 | positive favors home; negative favors away |
| Composite | 0.509 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.93-4.98 | 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.552 | 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.93-4.98 | 4-5 | -0.053 | 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 |
|---|---|---|---|---|
| TB | Ryan Vilade | batter / 1B | worse | predicted_AB 2.317 |
| TB | Junior Caminero | batter / 3B | worse | predicted_SO 2.196 |
| BOS | Patrick Sandoval | pitcher / Starter | neutral | predicted_SO 2 |
| TB | Chandler Simpson | batter / LF | worse | predicted_AB -1.93 |
| TB | Yandy Díaz | batter / DH | better | predicted_2B 1.83 |
| BOS | Adley Rutschman | batter / C | worse | predicted_AB -1.8 |
| BOS | Isiah Kiner-Falefa | batter / 2B | better | predicted_RBI 1.76 |
| TB | Jonny DeLuca | batter / CF | worse | predicted_AB 1.674 |
| 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 | 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 | BOS model-prediction batting totals differ from final simulation box score (AB: current=31, sim=35; H: current=8, sim=5). | BOS |
| info | CURRENT_PLAYER_MATCH_BOX | BOS current finalized hitter lines are model predictions and differ from the simulation box score: Adley Rutschman: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Nick Sogard: H current=1 box=0, R current=1 box=0, BB current=1 box=0; Mickey Gasper: AB current=3 box=5, HR current=1 box=0, SO current=1 box=0; Jarren Duran: 2B current=0 box=1, R current=0 box=1, BB current=0 box=1; Roman Anthony: H current=1 box=0, 2B current=1 box=0, SO current=1 box=0; Nate Eaton: AB current=3 box=4, SO current=1 box=2; Trevor Story: RBI current=1 box=0, R current=0 box=1, SO current=1 box=2; Caleb Durbin: AB current=3 box=4, 2B current=0 box=1, R current=1 box=0 | BOS |
| 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=6; RBI: current=4, sim=5; R: current=4, sim=5; SO: current=6, sim=12; HBP: current=0, sim=1). | 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=5, H current=1 box=0, RBI current=1 box=0, SO current=1 box=2; Jonny DeLuca: AB current=4 box=5, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Chandler Simpson: AB current=4 box=3, SO current=0 box=1, HBP current=0 box=1; Yandy Díaz: AB current=4 box=5, H current=1 box=2, 2B current=1 box=2, RBI current=1 box=2; Junior Caminero: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Ben Williamson: R current=0 box=1; Victor Mesa Jr.: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=2; Taylor Walls: H current=1 box=0, SO current=1 box=2 | TB |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| CHC | David Peterson | 4 ER / 15 outs | 1 ER / 18 outs | -3 |
| CIN | Rhett Lowder | 4 ER / 13 outs | 5 ER / 9 outs | 1 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Rhett Lowder (CIN) posted 15.00 ERA vs projected 8.31 (5 ER in 9 outs); he faced a strong offense (opponent run factor 1.08, 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
David Peterson (CHC) threw 18 outs, 1 ER = 1.5 ERA against a projected 7.2 ERA (-5.7 ERA error)
Bullpen behind him: 0 ER over 3 outs.
The HOME lineup he faced produced 1 runs on 4 hits and 1 HR, against a projected 3 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
Rhett Lowder (CIN) threw 9 outs, 5 ER = 15 ERA against a projected 8.31 ERA (6.69 ERA error)
Bullpen behind him: 0 ER over 3 outs.
The AWAY lineup he faced produced 9 runs on 13 hits and 3 HR, against a projected 5 runs / 8 hits (4 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| CHC | David Peterson (Starter) | 18 / 15 | 1.5 / 7.2 (-5.70) | 1 / 4 | 3 / 6 | 1 / 2 | 1 / 1 | 3.12 | 7 / 3 | 5.29 | venue away: 4.5 vs 6.34 ERA (ok) · opp run factor 1.02 (weak) · 30 prior appearances this season |
| CHC | Caleb Thielbar (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.43 | 1 / 1 | 1.31 | |
| CIN | Rhett Lowder (Starter) | 9 / 13 | 15 / 8.31 (+6.69) | 5 / 4 | 6 / 6 | 0 / 2 | 3 / 1 | 2.18 | 3 / 6 | 3.62 | venue home: 4.41 vs 7.44 ERA (ok) · opp run factor 1.08 (strong) · 27 prior appearances this season |
| CIN | Luis Mey (Setup Man) | 3 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 0.72 | 1 / 1 | 1.55 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Sal Stewart (1B) | CIN | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -1.4 | 0.348 elite | bad day |
| Tyler Stephenson (DH) | CIN | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 2 / 1 | -1.11 | 0.33 above average | bad day |
| Pedro Ramirez (2B) | CHC | 5 / 3 | 3 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0.94 | 0.289 below average | good day |
| Michael Conforto (DH) | CHC | 5 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 2 / 1 | 0.93 | 0.331 above average | projection too low |
| JJ Bleday (RF) | CIN | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 1 / 1 | 0 / 1 | 0.93 | 0.339 above average | projection too low |
| Pete Crow-Armstrong (CF) | CHC | 5 / 4 | 3 / 1 | 1 / 0 | 0 / 0 | 1 / 1 | 2 / 1 | 3 / 1 | 0 / 1 | 0 / 1 | 0.92 | 0.375 elite | projection too low |
| Dane Myers (CF) | CIN | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | -0.8 | 0.312 average | no signal |
| Oswaldo Cabrera (LF) | CIN | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | -0.47 | 0.148 weak | — |
| Ian Happ (LF) | CHC | 5 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 0 / 1 | 2 / 1 | 0.45 | 0.317 average | — |
| Nico Hoerner (SS) | CHC | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0.33 | 0.322 above average | — |
| Alex Bregman (3B) | CHC | 1 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 1 / 0 | 0 / 0 | 0.33 | 0.322 above average | — |
| Elly De La Cruz (SS) | CIN | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -0.33 | 0.377 elite | — |
| Seiya Suzuki (RF) | CHC | 5 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | 0.29 | 0.338 above average | — |
| Michael Busch (1B) | CHC | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 2 / 1 | 0 | 0.333 above average | — |
| Miguel Amaya (C) | CHC | 4 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 | 0.295 below average | — |
| Matt McLain (2B) | CIN | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.297 below average | — |
| Will Banfield (C) | CIN | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.171 weak | — |
| Ke'Bryan Hayes (3B) | CIN | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 | 0.294 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -1.693 | positive favors home; negative favors away |
| Recent form | -0.934 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.059 | positive favors home; negative favors away |
| Composite | -2.014 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.68-3.95 | n/a | Base ML historical model prediction |
| variance_applied | 5-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 7-4 | 0.56 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by winner_starter_is_below_average, 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 | 4.68-3.95 | 5-4 | 0.273 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 7-4 | 2 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by winner_starter_is_below_average, matchup_recency_guardrail) |
| embedded_savant_run_environment | 7-4 | 8-4 | 1 | 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 |
|---|---|---|---|---|
| CIN | Sal Stewart | batter / 1B | deboosted | predicted_RBI 2.44 |
| CHC | Pedro Ramirez | batter / 2B | better | predicted_SO 2.414 |
| CIN | Rhett Lowder | pitcher / Starter | worse | predicted_H 2 |
| CIN | Luis Mey | pitcher / Setup Man | better | predicted_H -2 |
| CIN | Matt McLain | batter / 2B | worse | predicted_SO 1.91 |
| CHC | Ian Happ | batter / LF | worse | predicted_H 1.69 |
| CHC | Michael Conforto | batter / DH | better | predicted_RBI 1.57 |
| CIN | Will Banfield | batter / C | worse | predicted_AB 1.5 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | CHC pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | CHC |
| info | CURRENT_PITCHER_DUPLICATION | 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_FINALIZED_MATCH_BOX | CHC model-prediction batting totals differ from final simulation box score (AB: current=33, sim=37; H: current=8, sim=10; HR: current=1, sim=3; RBI: current=4, sim=8; R: current=5, sim=8; BB: current=4, sim=3; SO: current=7, sim=12; 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: Seiya Suzuki: AB current=4 box=3, H current=1 box=2, 2B current=1 box=0, BB current=1 box=0; Michael Busch: H current=1 box=2, HR current=0 box=1, RBI current=1 box=2; Nico Hoerner: AB current=4 box=5, H current=1 box=0, SO current=0 box=1; Alex Bregman: AB current=4 box=5, HR current=0 box=1; Pete Crow-Armstrong: AB current=4 box=5, HR current=1 box=0, BB current=1 box=0; Ian Happ: H current=1 box=2, RBI current=0 box=1, SO current=1 box=2; Pedro Ramirez: AB current=3 box=4, 2B current=0 box=1, R current=0 box=1, SO current=1 box=3; Michael Conforto: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=2, R current=0 box=1 | CHC |
| info | CURRENT_FINALIZED_MATCH_BOX | CIN model pitcher projections differ from final simulation pitching box score (ER: current=7, sim=8). | CIN |
| info | CURRENT_FINALIZED_MATCH_BOX | CIN model-prediction batting totals differ from final simulation box score (AB: current=32, sim=33; H: current=8, sim=6; 2B: current=1, sim=0; HR: current=1, sim=2; R: current=3, sim=4; BB: current=4, sim=2; SO: current=8, sim=6). | 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, RBI current=1 box=0, BB current=1 box=0, SO current=1 box=0; JJ Bleday: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Matt McLain: AB current=3 box=4, H current=1 box=0, SO current=1 box=3; Oswaldo Cabrera: HR current=0 box=1, RBI current=0 box=1, R current=0 box=1, BB current=0 box=1; Sal Stewart: RBI current=1 box=3, SO current=1 box=0; Dane Myers: R current=0 box=1, BB current=1 box=0, SO current=1 box=0; Elly De La Cruz: RBI current=1 box=0, BB current=1 box=0; Will Banfield: AB current=3 box=4 | CIN |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| DET | Troy Melton | 3 ER / 18 outs | 4 ER / 11 outs | 1 |
| CHW | Davis Martin | 3 ER / 15 outs | 0 ER / 13 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: Troy Melton (DET) posted 9.82 ERA vs projected 4.50 (4 ER in 11 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
Troy Melton (DET) threw 11 outs, 4 ER = 9.82 ERA against a projected 4.5 ERA (5.32 ERA error)
Bullpen behind him: 0 ER over 1 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: both: the starter was hit hard AND the lineup underproduced
HOME pitching
No settled pitching line for this club. The forecast named Davis Martin (CHW) at a projected 5.4 ERA, but the per-player feed carries no pitching row for him in this game, so the actual-versus-projected comparison cannot be made on this side. That is a source-coverage gap in the settled box, not a forecasting failure.
Bullpen behind him: 0 ER over 0 outs.
The AWAY lineup he faced produced 1 runs on 6 hits and 0 HR, against a projected 4 runs / 8 hits (-3 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| DET | Troy Melton (Starter) | 11 / 18 | 9.82 / 4.5 (+5.32) | 4 / 3 | 4 / 4 | 0 / 0 | 3 / 4 | 2.04 | 4 / 4 | 4.21 | venue away: 2.27 vs 2.81 ERA (ok) · opp run factor 1.01 (average) · 19 prior appearances this season |
| DET | Tyler Holton (Setup Man) | 1 / 4 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 2 / 0 | 0.3 | 0 / 0 | 0.98 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Spencer Torkelson (1B) | DET | 2 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 0.64 | 0.313 average | no signal |
| Kevin McGonigle (DH) | DET | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 0 | -0.47 | 0.36 elite | — |
| Hao-Yu Lee (3B) | DET | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 2 / 1 | -0.47 | 0.303 below average | — |
| Gleyber Torres (2B) | DET | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 2 / 1 | -0.47 | 0.326 above average | — |
| Brett Callahan (RF) | DET | 4 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.303 below average | — |
| Riley Greene (LF) | DET | 4 / 4 | 1 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 1 | 1 / 1 | -0.33 | 0.374 elite | — |
| Max Clark (CF) | DET | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 1 / 0 | 0 / 1 | -0.14 | 0.318 average | — |
| John Peck (SS) | DET | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | -0.14 | 0.341 elite | — |
| Eduardo Valencia (C) | DET | 4 / 4 | 3 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | 0.01 | 0.337 above average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.396 | positive favors home; negative favors away |
| Recent form | -0.55 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.036 | positive favors home; negative favors away |
| Composite | -0.614 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.85-3.9 | n/a | Base ML historical model prediction |
| variance_applied | 5-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 0.56 | 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.85-3.9 | 5-4 | 0.052 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 5-4 | -0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-4 | 5-4 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-4 | 5-4 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-4 | 5-4 | -0 | Capped at max 12 realistic runs |
| simulation_result | 5-4 | 5-4 | -0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| DET | Hao-Yu Lee | batter / 3B | better | predicted_AB 2.03 |
| DET | Spencer Torkelson | batter / 1B | better | predicted_RBI 1.74 |
| CHW | Chase Meidroth | batter / 2B | better | predicted_RBI 1.66 |
| CHW | Munetaka Murakami | batter / 1B | worse | predicted_SO -1.558 |
| CHW | Kyle Teel | batter / C | better | predicted_RBI 1.49 |
| DET | Brett Callahan | batter / RF | better | predicted_H 1.449 |
| CHW | Sam Antonacci | batter / LF | worse | predicted_SO 1.391 |
| DET | Riley Greene | batter / LF | better | predicted_AB -1.23 |
| 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 | 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_FINALIZED_MATCH_BOX | CHW model-prediction batting totals differ from final simulation box score (AB: current=31, sim=32; H: current=7, sim=5; HR: current=1, sim=0; SO: current=9, sim=6; 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: Sam Antonacci: H current=1 box=0, R current=1 box=0, BB current=0 box=1, SO current=1 box=2; Munetaka Murakami: AB current=4 box=3, HR current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Kyle Teel: AB current=4 box=3, 2B current=0 box=1, RBI current=1 box=2, R current=0 box=1; Miguel Vargas: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Braden Montgomery: SO current=1 box=0; Colson Montgomery: AB current=3 box=4, RBI current=1 box=0; Andrew Benintendi: R current=0 box=1, SO current=1 box=0, HBP current=0 box=1; Chase Meidroth: AB current=3 box=4, H current=1 box=2, RBI current=0 box=2, SO current=1 box=0 | CHW |
| info | CURRENT_FINALIZED_MATCH_BOX | DET model-prediction batting totals differ from final simulation box score (AB: current=32, sim=36; H: current=8, sim=9; 2B: current=1, sim=2; RBI: current=4, sim=5; R: current=4, sim=5; SO: current=8, sim=7). | DET |
| info | CURRENT_PLAYER_MATCH_BOX | DET current finalized hitter lines are model predictions and differ from the simulation box score: Kevin McGonigle: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=0 box=1; Hao-Yu Lee: AB current=4 box=5, 2B current=0 box=1, RBI current=1 box=0, SO current=1 box=2; Eduardo Valencia: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Gleyber Torres: AB current=4 box=5, RBI current=0 box=1, BB current=1 box=0, SO current=1 box=0; Brett Callahan: H current=0 box=2, R current=0 box=1, BB current=0 box=1, SO current=1 box=0; Max Clark: AB current=3 box=4, H current=1 box=0, R current=1 box=0, SO current=1 box=2; Riley Greene: AB current=4 box=3, H current=1 box=2, 2B current=1 box=0, R current=0 box=1; John Peck: AB current=3 box=4, 2B current=0 box=1, RBI current=0 box=1, R current=0 box=1 | DET |
| 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 | Michael Wacha | 2 ER / 19 outs | 2 ER / 17 outs | 0 |
| PIT | Lake Bachar | 0 ER / 15 outs | 1 ER / 3 outs | 1 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Lake Bachar (PIT) posted 9.00 ERA vs projected 0.00 (1 ER in 3 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
Michael Wacha (KC) threw 17 outs, 2 ER = 3.18 ERA against a projected 2.84 ERA (0.34 ERA error)
Bullpen behind him: 2 ER over 2 outs.
The HOME lineup he faced produced 3 runs on 8 hits and 2 HR, against a projected 5 runs / 9 hits (-2 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Lake Bachar (PIT) threw 3 outs, 1 ER = 9 ERA against a projected 0 ERA (9 ERA error)
Bullpen behind him: 0 ER over 9 outs.
The AWAY lineup he faced produced 2 runs on 8 hits and 0 HR, against a projected 3 runs / 7 hits (-1 runs vs projection).
Who did the damage to him:
Verdict: both: the starter was hit hard AND the lineup underproduced
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| KC | Michael Wacha (Starter) | 17 / 19 | 3.18 / 2.84 | 2 / 2 | 4 / 4 | 1 / 0 | 4 / 3 | 1.44 | 5 / 5 | 4.86 | venue away: 3.7 vs 2.93 ERA (worse here) · opp run factor 0.99 (average) · 30 prior appearances this season |
| KC | Nate Pearson (Setup Man) | 2 / 3 | 27 / 0 (+27.00) | 2 / 0 | 3 / 0 | 1 / 0 | 0 / 0 | 0.45 | 1 / 2 | 0.91 | |
| PIT | Lake Bachar (Starter) | 3 / 15 | 9 / 0 (+9.00) | 1 / 0 | 3 / 1 | 0 / 0 | 0 / 5 | 2.63 | 1 / 8 | 4.5 | venue home: 1.54 vs 2.53 ERA (ok) · opp run factor 1 (weak) · 50 prior appearances this season |
| PIT | Mason Montgomery (Closer) | 3 / 4 | 0 / 13.5 (-13.50) | 0 / 2 | 1 / 1 | 0 / 1 | 0 / 0 | 0.43 | 1 / 1 | 1.49 | |
| PIT | Yohan Ramírez (Middle Reliever (High Leverage)) | 6 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0.42 | 4 / 2 | 1.2 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Rafael Flores Jr. (C) | PIT | 3 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | 1 / 0 | 1 / 0 | 1 / 1 | 2.04 | 0.344 elite | projection too low |
| Luke Maile (C) | KC | 4 / 3 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0.78 | 0.213 weak | good day |
| Maikel Garcia (3B) | KC | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | -0.78 | 0.312 average | no signal |
| Nick Loftin (RF) | KC | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | -0.64 | 0.293 below average | projection too high |
| Brandon Lowe (2B) | PIT | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 0 | 1 / 1 | -0.6 | 0.329 above average | bad day |
| Oneil Cruz (CF) | PIT | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | 0.6 | 0.352 elite | projection too low |
| Salvador Perez (1B) | KC | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0.309 average | — |
| Michael Massey (2B) | KC | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | -0.47 | 0.307 average | — |
| Nick Gonzales (3B) | PIT | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.326 above average | — |
| John Rave (LF) | KC | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 2 / 1 | -0.33 | 0.315 average | — |
| Bobby Witt Jr. (SS) | KC | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 1 / 1 | -0.33 | 0.377 elite | — |
| Ryan O'Hearn (DH) | PIT | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 0 | 1 / 1 | 0.33 | 0.316 average | — |
| Spencer Horwitz (1B) | PIT | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 2 / 0 | -0.33 | 0.312 average | — |
| Bryan Reynolds (LF) | PIT | 3 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | -0.31 | 0.353 elite | — |
| Jake Mangum (RF) | PIT | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | -0.14 | 0.289 below average | — |
| Jac Caglianone (DH) | KC | 3 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 0 | 0 / 1 | -0.13 | 0.355 elite | — |
| Tyler Tolbert (CF) | KC | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.295 below average | — |
| Konnor Griffin (SS) | PIT | 5 / 4 | 1 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | 0 | 0.306 average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.761 | positive favors home; negative favors away |
| Recent form | 0.782 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.005 | positive favors home; negative favors away |
| Composite | 0.783 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.39-5.6 | n/a | Base ML historical model prediction |
| variance_applied | 3-6 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 2-3 | 0.573 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 2-3 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 2-3 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 2-3 | n/a | Capped at max 12 realistic runs |
| simulation_result | 2-3 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 3.39-5.6 | 3-6 | 0.794 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 3-6 | 2-3 | -2 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 2-3 | 2-3 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 2-3 | 2-3 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 2-3 | 2-3 | 0 | Capped at max 12 realistic runs |
| simulation_result | 2-3 | 2-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 |
|---|---|---|---|---|
| KC | Bobby Witt Jr. | batter / SS | worse | predicted_AB -4.7 |
| KC | Michael Massey | batter / 2B | worse | predicted_SO 2.418 |
| KC | Maikel Garcia | batter / 3B | worse | predicted_SO 2.373 |
| PIT | Jake Mangum | batter / RF | worse | predicted_SO 2.267 |
| KC | Salvador Perez | batter / 1B | worse | predicted_SO 2.208 |
| KC | John Rave | batter / LF | better | predicted_RBI 1.69 |
| PIT | Ryan O'Hearn | batter / DH | worse | predicted_BB 1.673 |
| KC | Tyler Tolbert | batter / CF | worse | predicted_AB 1.5 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| 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_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 | KC model pitcher projections differ from final simulation pitching box score (H: current=8, sim=10). | KC |
| info | CURRENT_FINALIZED_MATCH_BOX | KC model-prediction batting totals differ from final simulation box score (AB: current=33, sim=32; H: current=7, sim=2; 2B: current=2, sim=0; RBI: current=4, sim=2; R: current=3, sim=2; BB: current=3, sim=7; SO: current=8, sim=14; HBP: current=0, sim=2). | KC |
| info | CURRENT_PLAYER_MATCH_BOX | KC current finalized hitter lines are model predictions and differ from the simulation box score: Jac Caglianone: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Salvador Perez: AB current=4 box=5, H current=1 box=0, RBI current=1 box=0, SO current=1 box=3; Nick Loftin: AB current=4 box=2, H current=1 box=0, 2B current=1 box=0, HBP current=0 box=1; John Rave: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=2, BB current=1 box=0; Bobby Witt Jr.: AB current=4 box=0, H current=1 box=0, R current=1 box=0, BB current=1 box=5; Tyler Tolbert: AB current=3 box=4; Luke Maile: BB current=0 box=1, SO current=1 box=0; Maikel Garcia: AB current=4 box=5, 2B current=1 box=0, RBI current=1 box=0, R current=0 box=1 | KC |
| info | CURRENT_FINALIZED_MATCH_BOX | PIT model-prediction batting totals differ from final simulation box score (AB: current=35, sim=40; H: current=9, sim=10; 2B: current=2, sim=1; HR: current=1, sim=0; RBI: current=5, sim=3; R: current=5, sim=3; SO: current=8, sim=11). | PIT |
| info | CURRENT_PLAYER_MATCH_BOX | PIT current finalized hitter lines are model predictions and differ from the simulation box score: Brandon Lowe: AB current=4 box=5, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Konnor Griffin: H current=1 box=2, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Ryan O'Hearn: AB current=4 box=3, H current=1 box=0, BB current=0 box=2, SO current=1 box=0; Oneil Cruz: AB current=4 box=5, H current=1 box=2, BB current=1 box=0; Bryan Reynolds: AB current=4 box=5, H current=1 box=2, 2B current=1 box=0, R current=1 box=0; Jake Mangum: AB current=3 box=4, H current=1 box=0, SO current=1 box=3; Rafael Flores Jr.: AB current=4 box=5, H current=1 box=0, RBI current=1 box=0, SO current=1 box=2; Spencer Horwitz: BB current=1 box=0, SO current=0 box=2 | PIT |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
No large single-factor errors.
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| MIA | Sandy Alcantara | 6 ER / 16 outs | 4 ER / 18 outs | -2 |
| SD | Walker Buehler | 2 ER / 14 outs | 3 ER / 20 outs | 1 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Sandy Alcantara (MIA) posted 6.00 ERA vs projected 10.12 (4 ER in 18 outs); he is materially worse pitching away (4.45 ERA there vs 3.14 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
Sandy Alcantara (MIA) threw 18 outs, 4 ER = 6 ERA against a projected 10.12 ERA (-4.12 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 7 runs on 10 hits and 3 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
HOME pitching
Walker Buehler (SD) threw 20 outs, 3 ER = 4.05 ERA against a projected 3.86 ERA (0.19 ERA error)
Bullpen behind him: 0 ER over 6 outs.
The AWAY lineup he faced produced 3 runs on 4 hits and 1 HR, against a projected 4 runs / 8 hits (-1 runs vs projection).
Who did the damage to him:
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 | Sandy Alcantara (Starter) | 18 / 16 | 6 / 10.12 (-4.12) | 4 / 6 | 8 / 7 | 1 / 0 | 1 / 2 | 1.87 | 3 / 4 | 4.08 | venue away: 4.45 vs 3.14 ERA (worse here) · opp run factor 1 (average) · 33 prior appearances this season |
| SD | Walker Buehler (Starter) | 20 / 14 | 4.05 / 3.86 | 3 / 2 | 3 / 4 | 1 / 1 | 2 / 0 | 1.32 | 6 / 6 | 3.67 | venue home: 4.11 vs 5.13 ERA (ok) · opp run factor 0.98 (average) · 30 prior appearances this season |
| SD | Bradgley Rodriguez (Middle Reliever (High Leverage)) | 3 / 4 | 0 / 13.5 (-13.50) | 0 / 2 | 1 / 2 | 0 / 0 | 0 / 2 | 0.2 | 0 / 0 | 1.14 | |
| SD | Mason Miller (Closer) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0.34 | 0 / 0 | 1.86 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Jake Cronenworth (3B) | SD | 4 / 4 | 3 / 1 | 1 / 0 | 0 / 0 | 2 / 0 | 5 / 0 | 3 / 0 | 0 / 0 | 1 / 1 | 3.11 | 0.273 weak | good day |
| Griffin Conine (RF) | MIA | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -1.26 | 0.364 elite | bad day |
| Samad Taylor (LF) | SD | 3 / 3 | 3 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 1.25 | 0.32 average | no signal |
| Jackson Merrill (CF) | SD | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 0 | 1 / 1 | -0.93 | 0.35 elite | bad day |
| Manny Machado (DH) | SD | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 2 / 1 | -0.8 | 0.332 above average | bad day |
| Ty France (1B) | SD | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | -0.78 | 0.335 above average | bad day |
| Javier Sanoja (2B) | MIA | 3 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 3 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0.62 | 0.291 below average | good day |
| Fernando Tatis Jr. (2B) | SD | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | 0.6 | 0.378 elite | projection too low |
| Heriberto Hernández (LF) | MIA | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.349 elite | — |
| Jakob Marsee (CF) | MIA | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 1 / 1 | -0.47 | 0.314 average | — |
| Otto Lopez (SS) | MIA | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | -0.47 | 0.328 above average | — |
| Graham Pauley (3B) | MIA | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.249 weak | — |
| Ethan Salas (C) | SD | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 0.33 | 0.158 weak | — |
| Kyle Stowers (DH) | MIA | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | 0 | 0.323 above average | — |
| Deyvison De Los Santos (1B) | MIA | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.17 weak | — |
| Joe Mack (C) | MIA | 2 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.285 below average | — |
| Dustin Harris (RF) | SD | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 | 0.32 average | — |
| Xander Bogaerts (SS) | SD | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 1 / 1 | 0 / 0 | 0 | 0.323 above average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.567 | positive favors home; negative favors away |
| Recent form | 1.358 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.021 | positive favors home; negative favors away |
| Composite | 1.056 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.05-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-6 | 0.58 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-6 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-6 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-6 | n/a | Capped at max 12 realistic runs |
| simulation_result | 4-6 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.05-4.18 | 4-4 | -0.131 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-4 | 4-6 | 2 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-6 | 4-6 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-6 | 4-6 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-6 | 4-6 | 0 | Capped at max 12 realistic runs |
| simulation_result | 4-6 | 4-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 |
|---|---|---|---|---|
| SD | Jackson Merrill | batter / CF | worse | predicted_AB -2.3 |
| MIA | Sandy Alcantara | pitcher / Starter | neutral | predicted_SO 2 |
| MIA | Otto Lopez | batter / SS | worse | predicted_AB -1.83 |
| MIA | Deyvison De Los Santos | batter / 1B | worse | predicted_AB 1.5 |
| SD | Ethan Salas | batter / C | worse | predicted_AB 1.5 |
| MIA | Kyle Stowers | batter / DH | worse | predicted_SO -1.359 |
| MIA | Graham Pauley | batter / 3B | worse | predicted_SO 1.306 |
| SD | Samad Taylor | batter / LF | worse | predicted_H -1.14 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | MIA pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | MIA |
| info | CURRENT_PITCHER_DUPLICATION | 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 | MIA model pitcher projections differ from final simulation pitching box score (BB: current=3, sim=4). | MIA |
| info | CURRENT_FINALIZED_MATCH_BOX | MIA model-prediction batting totals differ from final simulation box score (AB: current=33, sim=35; 2B: current=1, sim=2; BB: current=3, sim=2). | MIA |
| info | CURRENT_PLAYER_MATCH_BOX | MIA current finalized hitter lines are model predictions and differ from the simulation box score: Kyle Stowers: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=1 box=0; Heriberto Hernández: H current=1 box=2, 2B current=0 box=1, R current=0 box=1; Javier Sanoja: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, SO current=0 box=1; Griffin Conine: HR current=1 box=0, BB current=1 box=0; Jakob Marsee: H current=1 box=2, HR current=0 box=1, RBI current=0 box=1, BB current=1 box=0; Deyvison De Los Santos: AB current=3 box=4, SO current=1 box=2; Otto Lopez: AB current=4 box=3, RBI current=0 box=1, BB current=0 box=1, SO current=1 box=0; Graham Pauley: AB current=3 box=4, 2B current=0 box=1, SO current=1 box=2 | MIA |
| info | CURRENT_FINALIZED_MATCH_BOX | SD model-prediction batting totals differ from final simulation box score (AB: current=34, sim=32; 2B: current=1, sim=3; HR: current=1, sim=0; RBI: current=4, sim=6; R: current=5, sim=6; BB: current=3, sim=4; SO: current=7, sim=8). | SD |
| info | CURRENT_PLAYER_MATCH_BOX | SD current finalized hitter lines are model predictions and differ from the simulation box score: Fernando Tatis Jr.: H current=1 box=2, RBI current=1 box=0, BB current=1 box=0; Dustin Harris: AB current=4 box=3, H current=1 box=2, 2B current=0 box=1, RBI current=0 box=1; Manny Machado: AB current=4 box=3, R current=0 box=1; Jake Cronenworth: H current=1 box=0, RBI current=0 box=1, R current=0 box=1; Samad Taylor: AB current=3 box=4, H current=1 box=0, R current=1 box=0; Jackson Merrill: AB current=4 box=3, 2B current=0 box=1, HR current=1 box=0, RBI current=1 box=2; Xander Bogaerts: AB current=4 box=3, R current=1 box=0; Ty France: R current=0 box=1, SO current=1 box=0 | SD |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| MIL | Jacob Misiorowski | 1 ER / 18 outs | 0 ER / 9 outs | -1 |
| BAL | Brandon Young | 3 ER / 17 outs | 2 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
Jacob Misiorowski (MIL) threw 9 outs, 0 ER = 0 ERA against a projected 1.5 ERA (-1.5 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 3 runs / 6 hits (-3 runs vs projection).
Who did the damage to him:
Verdict: offense: the lineup scored well below its projection
HOME pitching
Brandon Young (BAL) threw 18 outs, 2 ER = 3 ERA against a projected 4.76 ERA (-1.76 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The AWAY lineup he faced produced 3 runs on 6 hits and 1 HR, against a projected 6 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| MIL | Jacob Misiorowski (Starter) | 9 / 18 | 0 / 1.5 | 0 / 1 | 1 / 1 | 0 / 0 | 0 / 3 | 2.14 | 4 / 8 | 7.35 | venue away: 2.23 vs 1.61 ERA (worse here) · opp run factor 0.96 (average) · 28 prior appearances this season |
| MIL | Trevor Megill (Closer) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0.28 | 1 / 0 | 1.08 | |
| BAL | Brandon Young (Starter) | 18 / 17 | 3 / 4.76 | 2 / 3 | 3 / 6 | 1 / 0 | 3 / 1 | 2.47 | 9 / 7 | 5.23 | venue home: 3.69 vs 3.27 ERA (ok) · opp run factor 0.96 (strong) · 26 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Pete Alonso (1B) | BAL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -1.73 | 0.396 elite | bad day |
| Brice Turang (2B) | MIL | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 3 / 1 | -1.11 | 0.346 elite | bad day |
| Dylan Beavers (LF) | BAL | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 2 / 2 | -1.11 | 0.297 below average | projection too high |
| Colton Cowser (CF) | BAL | 4 / 3 | 2 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 2 | 0.94 | 0.315 average | no signal |
| William Contreras (C) | MIL | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 1 / 1 | 1 / 1 | 0.93 | 0.336 above average | projection too low |
| Christian Yelich (DH) | MIL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 3 / 1 | -0.8 | 0.311 average | no signal |
| Cooper Pratt (SS) | MIL | 3 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 0.8 | 0.316 average | no signal |
| Garrett Mitchell (CF) | MIL | 3 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 1 / 1 | 0.8 | 0.354 elite | projection too low |
| Gunnar Henderson (SS) | BAL | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 2 / 1 | -0.8 | 0.32 average | no signal |
| Jake Bauers (1B) | MIL | 2 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 2 / 1 | 2 / 1 | 0 / 1 | 0.64 | 0.379 elite | projection too low |
| Jackson Chourio (LF) | MIL | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 0 | 1 / 1 | -0.6 | 0.341 elite | bad day |
| Joey Ortiz (3B) | MIL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 4 / 1 | -0.47 | 0.299 below average | — |
| Sal Frelick (RF) | MIL | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | -0.47 | 0.281 weak | — |
| Carlos Narváez (C) | BAL | 2 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.259 weak | — |
| Jeremiah Jackson (2B) | BAL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.287 below average | — |
| Coby Mayo (3B) | BAL | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 0 | 0 / 2 | 0.33 | 0.335 above average | — |
| Samuel Basallo (DH) | BAL | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 1 | -0.14 | 0.321 above average | — |
| Leody Taveras (RF) | BAL | 4 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.27 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -1.358 | positive favors home; negative favors away |
| Recent form | -1.114 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.002 | positive favors home; negative favors away |
| Composite | -2.108 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 5.08-2.54 | n/a | Base ML historical model prediction |
| variance_applied | 5-3 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 6-2 | 0.629 | Enhanced ML with recent form, H2H, low-score analysis |
| embedded_savant_run_environment | 7-1 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 7-1 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 7-1 | n/a | Capped at max 12 realistic runs |
| simulation_result | 7-1 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 5.08-2.54 | 5-3 | -0.54 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-3 | 6-2 | 2 | Enhanced ML with recent form, H2H, low-score analysis |
| embedded_savant_run_environment | 6-2 | 7-1 | 2 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 7-1 | 7-1 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 7-1 | 7-1 | -0 | Capped at max 12 realistic runs |
| simulation_result | 7-1 | 7-1 | -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 |
|---|---|---|---|---|
| MIL | Jake Bauers | batter / 1B | better | predicted_RBI 1.65 |
| MIL | Joey Ortiz | batter / 3B | better | predicted_RBI 1.598 |
| MIL | Garrett Mitchell | batter / CF | better | predicted_AB -1.47 |
| MIL | Brice Turang | batter / 2B | better | predicted_H 1.26 |
| MIL | William Contreras | batter / C | better | predicted_RBI 1.12 |
| BAL | Pete Alonso | batter / 1B | worse | predicted_SO -1.072 |
| BAL | Dylan Beavers | batter / LF | worse | predicted_SO 1.065 |
| BAL | Leody Taveras | batter / RF | worse | predicted_SO 1.031 |
| 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 | MIL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | MIL |
| info | CURRENT_FINALIZED_MATCH_BOX | 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=33, sim=29; H: current=6, sim=2; HR: current=1, sim=0; RBI: current=4, sim=1; R: current=3, sim=1; SO: current=12, sim=10). | BAL |
| info | CURRENT_PLAYER_MATCH_BOX | BAL current finalized hitter lines are model predictions and differ from the simulation box score: Dylan Beavers: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, BB current=1 box=0; Samuel Basallo: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, BB current=0 box=1; Gunnar Henderson: 2B current=0 box=1, RBI current=0 box=1, BB current=1 box=0, SO current=1 box=2; Pete Alonso: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Leody Taveras: SO current=1 box=2; Coby Mayo: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Colton Cowser: H current=0 box=1, SO current=2 box=0; Jeremiah Jackson: AB current=4 box=3, H current=1 box=0 | BAL |
| info | CURRENT_FINALIZED_MATCH_BOX | MIL model-prediction batting totals differ from final simulation box score (AB: current=33, sim=37; H: current=8, sim=11; 2B: current=1, sim=3; 3B: current=0, sim=1; RBI: current=4, sim=7; R: current=6, sim=7; BB: current=4, sim=1; SO: current=8, sim=9). | MIL |
| info | CURRENT_PLAYER_MATCH_BOX | MIL current finalized hitter lines are model predictions and differ from the simulation box score: William Contreras: AB current=4 box=5, H current=1 box=2, 2B current=0 box=1, RBI current=1 box=2; Joey Ortiz: 2B current=0 box=1, RBI current=0 box=2, R current=0 box=1, SO current=1 box=2; Jake Bauers: HR current=0 box=1, RBI current=1 box=2, BB current=1 box=0, SO current=1 box=0; Brice Turang: AB current=4 box=5, H current=1 box=2, RBI current=1 box=0, BB current=1 box=0; Jackson Chourio: AB current=4 box=5, H current=1 box=2, HR current=1 box=0, RBI current=1 box=0; Christian Yelich: BB current=1 box=0, SO current=1 box=2; Cooper Pratt: AB current=3 box=4, 3B current=0 box=1; Sal Frelick: AB current=3 box=4, H current=1 box=0, SO current=0 box=1 | MIL |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| MIN | Dean Kremer | 2 ER / 14 outs | 0 ER / 18 outs | -2 |
| LAA | Ryan Johnson | 1 ER / 17 outs | 3 ER / 14 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: Ryan Johnson (LAA) posted 5.79 ERA vs projected 1.59 (3 ER in 14 outs); no credible venue, opponent-strength or experience signal explains it — an outlier start (variance).
What to do: Variance — no model change is warranted for this start.
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Dean Kremer (MIN) threw 18 outs, 0 ER = 0 ERA against a projected 3.86 ERA (-3.86 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 0 runs on 1 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
Ryan Johnson (LAA) threw 14 outs, 3 ER = 5.79 ERA against a projected 1.59 ERA (4.2 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The AWAY lineup he faced produced 8 runs on 13 hits and 1 HR, against a projected 3 runs / 7 hits (5 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| MIN | Dean Kremer (Starter) | 18 / 14 | 0 / 3.86 (-3.86) | 0 / 2 | 1 / 2 | 0 / 0 | 3 / 2 | 1.78 | 8 / 3 | 4.65 | venue away: 6.11 vs 4.71 ERA (worse here) · opp run factor 0.94 (weak) · 15 prior appearances this season |
| LAA | Ryan Johnson (Starter) | 14 / 17 | 5.79 / 1.59 (+4.20) | 3 / 1 | 7 / 2 | 0 / 0 | 0 / 1 | 2.02 | 6 / 5 | 5.13 | venue home: 2.92 vs 5.56 ERA (ok) · opp run factor 0.93 (average) · 20 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Alan Roden (RF) | MIN | 5 / 3 | 3 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 4 / 0 | 1 / 0 | 0 / 1 | 1 / 0 | 2.01 | 0.342 elite | projection too low |
| Kody Clemens (2B) | MIN | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -1.4 | 0.335 above average | bad day |
| Mike Trout (DH) | LAA | 1 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | -1.4 | 0.378 elite | bad day |
| Zach Neto (SS) | LAA | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 2 | -1.11 | 0.312 average | no signal |
| Brooks Lee (3B) | MIN | 4 / 4 | 3 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 3 / 0 | 0 / 0 | 0 / 1 | 0.94 | 0.275 weak | good day |
| Wade Meckler (LF) | LAA | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | -0.8 | 0.31 average | no signal |
| Josh Bell (DH) | MIN | 4 / 4 | 3 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 2 / 1 | 1 / 0 | 1 / 1 | 1 / 1 | 0.63 | 0.335 above average | projection too low |
| Moisés Ballesteros (C) | LAA | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.296 below average | — |
| Jose Siri (CF) | LAA | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 2 / 2 | -0.47 | 0.301 below average | — |
| Walker Jenkins (CF) | MIN | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | -0.33 | 0.319 average | — |
| Christian Moore (2B) | LAA | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | 0.33 | 0.225 weak | — |
| Emmanuel Rodriguez (LF) | MIN | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0.31 | 0.343 elite | — |
| Denzer Guzman (3B) | LAA | 2 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 0 | 1 / 1 | -0.14 | 0.269 weak | — |
| Royce Lewis (1B) | MIN | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 3 / 1 | 0 | 0.307 average | — |
| Victor Caratini (C) | MIN | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.309 average | — |
| Ben Ross (SS) | MIN | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 0 / 0 | 3 / 1 | 0 | 0.125 weak | — |
| Vaughn Grissom (1B) | LAA | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.308 average | — |
| Josh Lowe (RF) | LAA | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.284 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.062 | positive favors home; negative favors away |
| Recent form | 0.406 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.017 | positive favors home; negative favors away |
| Composite | 0.353 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.28-3.9 | 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.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 | 4-5 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-5 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-5 | n/a | Capped at max 12 realistic runs |
| simulation_result | 4-5 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.28-3.9 | 4-4 | 0.381 | 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, matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-5 | 4-5 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-5 | 4-5 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-5 | 4-5 | 0 | Capped at max 12 realistic runs |
| simulation_result | 4-5 | 4-5 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| MIN | Brooks Lee | batter / 3B | deboosted | predicted_AB -2.06 |
| LAA | Christian Moore | batter / 2B | better | predicted_RBI 1.83 |
| MIN | Kody Clemens | batter / 2B | worse | predicted_H 1.63 |
| MIN | Alan Roden | batter / RF | better | predicted_AB 1.5 |
| MIN | Ben Ross | batter / SS | worse | predicted_AB 1.5 |
| LAA | Zach Neto | batter / SS | worse | predicted_SO -1.38 |
| MIN | Royce Lewis | batter / 1B | deboosted | predicted_AB -1.36 |
| LAA | Moisés Ballesteros | batter / C | worse | predicted_SO 1.227 |
| 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 | MIN pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | MIN |
| info | CURRENT_FINALIZED_MATCH_BOX | LAA model-prediction batting totals differ from final simulation box score (2B: current=1, sim=2; RBI: current=4, sim=5; R: current=4, sim=5; SO: current=11, sim=7). | LAA |
| info | CURRENT_PLAYER_MATCH_BOX | LAA current finalized hitter lines are model predictions and differ from the simulation box score: Mike Trout: HR current=1 box=0, RBI current=0 box=1, BB current=1 box=0; Vaughn Grissom: 2B current=0 box=1, RBI current=1 box=0; Wade Meckler: AB current=4 box=3, RBI current=0 box=1, SO current=1 box=0; Moisés Ballesteros: H current=1 box=0, SO current=1 box=2; Josh Lowe: H current=0 box=1, 2B current=0 box=1, RBI current=0 box=1, R current=0 box=1; Jose Siri: RBI current=1 box=0, R current=0 box=1, BB current=0 box=1, SO current=2 box=1; Christian Moore: AB current=3 box=4, H current=0 box=1, HR current=0 box=1, RBI current=0 box=2; Denzer Guzman: H current=1 box=0, RBI current=1 box=0, R current=1 box=0 | LAA |
| info | CURRENT_FINALIZED_MATCH_BOX | MIN model-prediction batting totals differ from final simulation box score (AB: current=33, sim=34; 2B: current=1, sim=4; HR: current=1, sim=0; R: current=3, sim=4; SO: current=8, sim=5). | MIN |
| info | CURRENT_PLAYER_MATCH_BOX | MIN current finalized hitter lines are model predictions and differ from the simulation box score: Kody Clemens: H current=1 box=2, 2B current=0 box=1, HR current=1 box=0; Alan Roden: AB current=3 box=4, H current=0 box=1, 2B current=0 box=1, RBI current=0 box=1; Josh Bell: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, BB current=1 box=0; Royce Lewis: AB current=4 box=3, H current=1 box=2, 2B current=0 box=1, R current=0 box=1; Emmanuel Rodriguez: H current=1 box=0; Walker Jenkins: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=1 box=2; Victor Caratini: AB current=3 box=4, H current=0 box=1; Brooks Lee: AB current=4 box=3, 2B current=0 box=1, RBI current=1 box=2, R current=0 box=1 | MIN |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| NYY | Will Warren | 2 ER / 16 outs | 4 ER / 13 outs | 2 |
| ARI | Corbin Burnes | 2 ER / 12 outs | 4 ER / 8 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: Will Warren (NYY) posted 8.31 ERA vs projected 3.38 (4 ER in 13 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
Will Warren (NYY) threw 13 outs, 4 ER = 8.31 ERA against a projected 3.38 ERA (4.93 ERA error)
Bullpen behind him: 2 ER over 5 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: pitching: the starter gave up runs at a far worse rate than projected
HOME pitching
No settled pitching line for this club. The forecast named Corbin Burnes (ARI) at a projected 4.5 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 8 hits and 3 HR, against a projected 5 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| NYY | Will Warren (Starter) | 13 / 16 | 8.31 / 3.38 (+4.93) | 4 / 2 | 6 / 4 | 0 / 1 | 3 / 4 | 1.72 | 4 / 4 | 6.02 | venue away: 4.09 vs 3.86 ERA (ok) · opp run factor 1.02 (average) · 30 prior appearances this season |
| NYY | Brent Headrick (Setup Man) | 2 / 3 | 27 / 18 (+9.00) | 2 / 2 | 1 / 2 | 1 / 1 | 1 / 0 | 0.38 | 1 / 0 | 1.28 | |
| NYY | Tim Hill (Middle Reliever (High Leverage)) | 3 / 2 | 0 / 0 | 0 / 0 | 1 / 2 | 0 / 0 | 0 / 0 | 0.24 | 0 / 0 | 0.46 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| George Lombard Jr. (SS) | NYY | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 1 / 1 | 0 / 0 | 0 / 1 | 1.4 | 0.288 below average | good day |
| Ben Rice (DH) | NYY | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | -1.4 | 0.376 elite | bad day |
| Heliot Ramos (RF) | NYY | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 1 | 0 / 0 | 1 / 1 | 0.93 | 0.329 above average | projection too low |
| Spencer Jones (CF) | NYY | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 0 | 0 / 0 | 2 / 1 | 0.93 | 0.325 above average | projection too low |
| José Caballero (3B) | NYY | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.283 below average | — |
| Austin Wells (C) | NYY | 3 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 0.47 | 0.292 below average | — |
| Cody Bellinger (LF) | NYY | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 3 / 0 | -0.33 | 0.339 above average | — |
| Luis García Jr. (1B) | NYY | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | -0.31 | 0.345 elite | — |
| Anthony Volpe (2B) | NYY | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.297 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.908 | positive favors home; negative favors away |
| Recent form | -0.68 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.009 | positive favors home; negative favors away |
| Composite | -1.05 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.47-4.32 | n/a | Base ML historical model prediction |
| variance_applied | 4-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 6-4 | 0.545 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 6-4 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-4 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-4 | n/a | Capped at max 12 realistic runs |
| simulation_result | 6-4 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.47-4.32 | 4-4 | -0.144 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-4 | 6-4 | 2 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 6-4 | 6-4 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-4 | 6-4 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-4 | 6-4 | -0 | Capped at max 12 realistic runs |
| simulation_result | 6-4 | 6-4 | -0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| ARI | Ketel Marte | batter / 2B | boosted | predicted_H 2 |
| NYY | Spencer Jones | batter / CF | worse | predicted_AB -1.9 |
| ARI | Lars Nootbaar | batter / LF | worse | predicted_AB 1.765 |
| NYY | Heliot Ramos | batter / RF | better | predicted_RBI 1.583 |
| NYY | José Caballero | batter / 3B | better | predicted_RBI 1.58 |
| NYY | Ben Rice | batter / DH | worse | predicted_BB 1.441 |
| ARI | Gabriel Moreno | batter / C | worse | predicted_H -1.35 |
| ARI | Nolan Arenado | batter / 3B | worse | predicted_H -1.24 |
| 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 | 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 | ARI model-prediction batting totals differ from final simulation box score (AB: current=33, sim=35; 2B: current=1, sim=0; HR: current=1, sim=2; BB: current=3, sim=4; SO: current=6, sim=5). | ARI |
| info | CURRENT_PLAYER_MATCH_BOX | ARI current finalized hitter lines are model predictions and differ from the simulation box score: Lars Nootbaar: AB current=4 box=5, H current=1 box=2, RBI current=0 box=1, R current=0 box=1; Geraldo Perdomo: AB current=4 box=3, H current=1 box=0; Gabriel Moreno: AB current=4 box=5, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Jesús Sánchez: BB current=0 box=1, SO current=1 box=0; Corbin Carroll: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Tim Tawa: AB current=3 box=4, H current=1 box=2, HR current=0 box=1, RBI current=0 box=1; Ketel Marte: AB current=4 box=5, H current=1 box=3, HR current=0 box=1, RBI current=1 box=2; Pavin Smith: R current=0 box=1, BB current=0 box=1, SO current=1 box=0 | ARI |
| info | CURRENT_FINALIZED_MATCH_BOX | NYY model-prediction batting totals differ from final simulation box score (AB: current=32, sim=34; H: current=8, sim=7; 2B: current=1, sim=0; 3B: current=0, sim=1; HR: current=1, sim=2; RBI: current=4, sim=6; R: current=5, sim=6; BB: current=3, sim=6). | NYY |
| info | CURRENT_PLAYER_MATCH_BOX | NYY current finalized hitter lines are model predictions and differ from the simulation box score: Heliot Ramos: AB current=3 box=4, H current=1 box=2, HR current=0 box=1, RBI current=0 box=2; Cody Bellinger: AB current=4 box=5, RBI current=1 box=0, BB current=1 box=0, SO current=0 box=1; Luis García Jr.: AB current=4 box=5, 2B current=1 box=0, 3B current=0 box=1, SO current=0 box=1; Anthony Volpe: AB current=3 box=4, R current=0 box=1, SO current=1 box=0; George Lombard Jr.: AB current=4 box=3, H current=1 box=0, RBI current=0 box=1, BB current=0 box=1; José Caballero: AB current=3 box=4, H current=1 box=2, HR current=0 box=1, RBI current=0 box=2; Ben Rice: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Spencer Jones: AB current=4 box=2, H current=1 box=0, RBI current=1 box=0, BB current=0 box=2 | NYY |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| OAK | Jack Perkins | 5 ER / 14 outs | 1 ER / 18 outs | -4 |
| CLE | Gavin Williams | 3 ER / 16 outs | 0 ER / 21 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: Jack Perkins (OAK) posted 1.50 ERA vs projected 9.64 (1 ER in 18 outs); no credible venue, opponent-strength or experience signal explains it — an outlier start (variance).
What to do: Variance — no model change is warranted for this start.
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Jack Perkins (OAK) threw 18 outs, 1 ER = 1.5 ERA against a projected 9.64 ERA (-8.14 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 1 runs on 7 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
HOME pitching
Gavin Williams (CLE) threw 21 outs, 0 ER = 0 ERA against a projected 5.06 ERA (-5.06 ERA error)
Bullpen behind him: 0 ER over 6 outs.
The AWAY lineup he faced produced 0 runs on 5 hits and 0 HR, against a projected 3 runs / 7 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| OAK | Jack Perkins (Starter) | 18 / 14 | 1.5 / 9.64 (-8.14) | 1 / 5 | 5 / 8 | 0 / 1 | 0 / 0 | 1.97 | 4 / 4 | 5.23 | venue away: 6.08 vs 7.42 ERA (ok) · opp run factor 1.04 (average) · 35 prior appearances this season |
| CLE | Gavin Williams (Starter) | 21 / 16 | 0 / 5.06 (-5.06) | 0 / 3 | 3 / 4 | 0 / 0 | 1 / 0 | 2.06 | 9 / 7 | 7.42 | venue home: 3.04 vs 4.79 ERA (ok) · opp run factor 1.05 (weak) · 30 prior appearances this season |
| CLE | Cade Smith (Closer) | 4 / 4 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0.27 | 3 / 0 | 1.18 | |
| CLE | Hunter Gaddis (Setup Man) | 2 / 3 | 0 / 0 | 0 / 0 | 2 / 1 | 0 / 0 | 0 / 1 | 0.26 | 1 / 0 | 0.78 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Shea Langeliers (DH) | OAK | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 2 / 1 | -1.4 | 0.362 elite | bad day |
| Angel Martínez (LF) | CLE | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 2 / 1 | -1.4 | 0.307 average | no signal |
| Travis Bazzana (2B) | CLE | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | -0.8 | 0.304 average | no signal |
| Alika Williams (SS) | OAK | 2 / 3 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | -0.78 | 0.242 weak | projection too high |
| Jonah Heim (C) | OAK | 3 / 4 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0.78 | 0.285 below average | good day |
| Steven Kwan (CF) | CLE | 4 / 4 | 3 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 0.61 | 0.324 above average | projection too low |
| Tommy White (1B) | OAK | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.293 below average | — |
| Zack Gelof (3B) | OAK | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | 0.47 | 0.313 average | — |
| Lawrence Butler (RF) | OAK | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 2 / 2 | -0.47 | 0.325 above average | — |
| Angel Genao (SS) | CLE | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.292 below average | — |
| Nathaniel Lowe (1B) | CLE | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.338 above average | — |
| Henry Bolte (LF) | OAK | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 2 / 2 | -0.33 | 0.317 average | — |
| Donovan Walton (2B) | OAK | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 3 / 1 | -0.33 | 0.331 above average | — |
| Chase DeLauter (RF) | CLE | 3 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 0 / 1 | -0.31 | 0.345 elite | — |
| José Ramírez (3B) | CLE | 4 / 4 | 2 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 1 | 0.14 | 0.329 above average | — |
| Denzel Clarke (CF) | OAK | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.219 weak | — |
| Jo Adell (DH) | CLE | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.326 above average | — |
| Patrick Bailey (C) | CLE | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 3 / 1 | 0 | 0.305 average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 1.456 | positive favors home; negative favors away |
| Recent form | 1.358 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.004 | positive favors home; negative favors away |
| Composite | 1.673 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.78-5.69 | n/a | Base ML historical model prediction |
| variance_applied | 4-6 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-7 | 0.58 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-7 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-7 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-7 | n/a | Capped at max 12 realistic runs |
| simulation_result | 4-7 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 3.78-5.69 | 4-6 | 0.087 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-6 | 4-7 | 1 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-7 | 4-7 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-7 | 4-7 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-7 | 4-7 | 0 | Capped at max 12 realistic runs |
| simulation_result | 4-7 | 4-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 |
|---|---|---|---|---|
| CLE | Gavin Williams | pitcher / Starter | neutral | predicted_SO 4 |
| OAK | Jack Perkins | pitcher / Starter | worse | predicted_IP -3.8 |
| CLE | Cade Smith | pitcher / Closer | neutral | predicted_SO -3 |
| CLE | Travis Bazzana | batter / 2B | better | predicted_RBI 2.45 |
| OAK | Seth Johnson | pitcher / Reliever | better | predicted_SO 2 |
| OAK | Chris Roycroft | pitcher / Reliever | better | predicted_SO 2 |
| OAK | Hogan Harris | pitcher / Reliever | worse | predicted_H 2 |
| OAK | Jonah Heim | batter / C | worse | predicted_AB -1.77 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| 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_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_FINALIZED_MATCH_BOX | CLE model-prediction batting totals differ from final simulation box score (AB: current=33, sim=34; H: current=8, sim=11; RBI: current=4, sim=7; R: current=4, sim=7; BB: current=4, sim=0; SF: current=0, sim=1; HBP: current=0, sim=1). | CLE |
| info | CURRENT_PLAYER_MATCH_BOX | CLE current finalized hitter lines are model predictions and differ from the simulation box score: Steven Kwan: H current=1 box=0, R current=1 box=0, BB current=1 box=0; Jo Adell: RBI current=1 box=2, R current=0 box=1; Travis Bazzana: AB current=3 box=4, H current=1 box=2, HR current=0 box=1, RBI current=0 box=3; José Ramírez: H current=1 box=2, 2B current=1 box=0, RBI current=0 box=1, BB current=1 box=0; Chase DeLauter: H current=1 box=2, 2B current=1 box=0, RBI current=1 box=0, R current=0 box=1; Angel Genao: AB current=3 box=4; Nathaniel Lowe: 2B current=0 box=1, RBI current=1 box=0, R current=0 box=1, SO current=1 box=0; Patrick Bailey: AB current=3 box=2, RBI current=0 box=1, R current=0 box=1, SO current=1 box=2 | CLE |
| info | CURRENT_FINALIZED_MATCH_BOX | OAK model pitcher projections differ from final simulation pitching box score (ER: current=6, sim=7). | OAK |
| info | CURRENT_FINALIZED_MATCH_BOX | OAK model-prediction batting totals differ from final simulation box score (H: current=7, sim=6; 2B: current=1, sim=0; R: current=3, sim=4; BB: current=3, sim=1; SO: current=11, sim=7). | OAK |
| info | CURRENT_PLAYER_MATCH_BOX | OAK current finalized hitter lines are model predictions and differ from the simulation box score: Henry Bolte: RBI current=0 box=2, BB current=1 box=0, SO current=2 box=0; Shea Langeliers: HR current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=1 box=0; Tommy White: H current=1 box=2, HR current=0 box=1, RBI current=0 box=1, R current=0 box=1; Alika Williams: AB current=3 box=4, H current=1 box=0, 2B current=1 box=0, SO current=1 box=2; Jonah Heim: AB current=4 box=2, H current=0 box=1, RBI current=1 box=0, R current=0 box=1; Zack Gelof: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=1 box=2; Lawrence Butler: H current=1 box=0, RBI current=1 box=0, BB current=1 box=0, SO current=2 box=0; Donovan Walton: AB current=3 box=4, H current=1 box=0, BB current=1 box=0, SO current=1 box=2 | OAK |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| PHI | Cristopher Sánchez | 4 ER / 19 outs | 2 ER / 19 outs | -2 |
| NYM | Jonah Tong | 2 ER / 16 outs | 4 ER / 14 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: Jonah Tong (NYM) posted 7.71 ERA vs projected 3.38 (4 ER in 14 outs); no credible venue, opponent-strength or experience signal explains it — an outlier start (variance).
What to do: Variance — no model change is warranted for this start.
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Cristopher Sánchez (PHI) threw 19 outs, 2 ER = 2.84 ERA against a projected 5.68 ERA (-2.84 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 2 runs on 7 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
Jonah Tong (NYM) threw 14 outs, 4 ER = 7.71 ERA against a projected 3.38 ERA (4.33 ERA error) only 5 prior appearances in the covered season - the projection had little of his own record to stand on
Bullpen behind him: 3 ER over 1 outs.
The AWAY lineup he faced produced 7 runs on 7 hits and 0 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| PHI | Cristopher Sánchez (Starter) | 19 / 19 | 2.84 / 5.68 | 2 / 4 | 6 / 3 | 1 / 0 | 0 / 5 | 1.3 | 6 / 6 | 5.42 | venue away: 3.95 vs 2.21 ERA (worse here) · opp run factor 0.92 (average) · 31 prior appearances this season |
| NYM | Jonah Tong (Starter) | 14 / 16 | 7.71 / 3.38 (+4.33) | 4 / 2 | 5 / 6 | 0 / 0 | 4 / 2 | 0.93 | 5 / 11 | 5.64 | venue home: 0 vs 7.2 ERA (ok) · opp run factor 1 (average) · 5 prior appearances this season |
| NYM | Kodai Senga (Closer) | 1 / 4 | 81 / 6.75 (+74.25) | 3 / 1 | 2 / 1 | 0 / 0 | 3 / 0 | 0.44 | 0 / 0 | 1.26 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Juan Soto (LF) | NYM | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -1.26 | 0.413 elite | bad day |
| Justin Crawford (CF) | PHI | 4 / 3 | 1 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 3 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1.09 | 0.286 below average | good day |
| Trea Turner (SS) | PHI | 3 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 2 / 0 | 2 / 1 | 0.97 | 0.295 below average | good day |
| Bo Bichette (3B) | NYM | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 0 | 0 / 0 | 1 / 1 | 0.93 | 0.326 above average | projection too low |
| Francisco Lindor (SS) | NYM | 5 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | -0.8 | 0.334 above average | bad day |
| J.T. Realmuto (C) | PHI | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 2 / 1 | 0.66 | 0.319 average | no signal |
| Alec Bohm (1B) | PHI | 5 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0.47 | 0.329 above average | — |
| Bryson Stott (3B) | PHI | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 1 / 1 | 0 / 1 | -0.47 | 0.327 above average | — |
| Marcus Semien (2B) | NYM | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.303 below average | — |
| Kyle Schwarber (DH) | PHI | 1 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 2 / 1 | 4 / 1 | 0 / 1 | -0.41 | 0.363 elite | — |
| Bryce Harper (RF) | PHI | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | -0.33 | 0.382 elite | — |
| Luis Arraez (2B) | PHI | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | -0.31 | 0.307 average | — |
| Francisco Alvarez (DH) | NYM | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 1 / 1 | 0.14 | 0.321 above average | — |
| Brandon Marsh (LF) | PHI | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 3 / 1 | 0 | 0.3 below average | — |
| Carson Benge (RF) | NYM | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 0 | 0.34 elite | — |
| Mark Vientos (1B) | NYM | 4 / 4 | 1 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.313 average | — |
| Nick Morabito (CF) | NYM | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.322 above average | — |
| Luis Torrens (C) | NYM | 2 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 0 | 0.294 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.261 | positive favors home; negative favors away |
| Recent form | 0.294 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.077 | positive favors home; negative favors away |
| Composite | -0.06 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.3-4.23 | 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.517 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-5 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-5 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-5 | n/a | Capped at max 12 realistic runs |
| simulation_result | 4-5 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.3-4.23 | 4-4 | 0.069 | 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, 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 |
|---|---|---|---|---|
| PHI | Cristopher Sánchez | pitcher / Starter | neutral | predicted_SO 4 |
| PHI | Brandon Marsh | batter / LF | boosted | predicted_H 2.34 |
| NYM | Juan Soto | batter / LF | worse | predicted_AB -2.08 |
| PHI | Trea Turner | batter / SS | worse | predicted_SO 2.068 |
| PHI | Jonathan Bowlan | pitcher / Setup Man | worse | predicted_SO -2 |
| NYM | Mark Vientos | batter / 1B | worse | predicted_AB 1.8 |
| NYM | Luis Torrens | batter / C | worse | predicted_BB 1.8 |
| NYM | Carson Benge | batter / RF | better | predicted_RBI 1.586 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| 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_PITCHER_DUPLICATION | PHI pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | PHI |
| info | CURRENT_FINALIZED_MATCH_BOX | NYM model pitcher projections differ from final simulation pitching box score (H: current=9, sim=8). | NYM |
| info | CURRENT_FINALIZED_MATCH_BOX | NYM model-prediction batting totals differ from final simulation box score (AB: current=34, sim=33; H: current=8, sim=6; 3B: current=0, sim=1; HR: current=1, sim=0; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=7; SO: current=9, sim=7). | NYM |
| info | CURRENT_PLAYER_MATCH_BOX | NYM current finalized hitter lines are model predictions and differ from the simulation box score: Francisco Lindor: H current=1 box=2, SO current=1 box=0; Carson Benge: 3B current=0 box=1, RBI current=0 box=2; Mark Vientos: AB current=4 box=5, 2B current=1 box=0, R current=0 box=1; Francisco Alvarez: H current=1 box=0, BB current=1 box=0; Juan Soto: AB current=4 box=3, HR current=1 box=0, RBI current=1 box=0, BB current=1 box=2; Bo Bichette: H current=1 box=0, R current=0 box=1, BB current=0 box=1, SO current=1 box=0; Nick Morabito: AB current=3 box=4, SO current=1 box=2; Marcus Semien: AB current=4 box=3, 2B current=0 box=1, BB current=0 box=1 | NYM |
| info | CURRENT_FINALIZED_MATCH_BOX | PHI model pitcher projections differ from final simulation pitching box score (H: current=5, sim=6; BB: current=5, sim=7). | PHI |
| info | CURRENT_FINALIZED_MATCH_BOX | PHI model-prediction batting totals differ from final simulation box score (AB: current=33, sim=35; H: current=7, sim=8; 2B: current=1, sim=3; HR: current=1, sim=0; SO: current=7, sim=13). | PHI |
| info | CURRENT_PLAYER_MATCH_BOX | PHI current finalized hitter lines are model predictions and differ from the simulation box score: Bryce Harper: AB current=4 box=3, RBI current=1 box=0; Alec Bohm: 2B current=0 box=1, RBI current=1 box=2, R current=0 box=1, SO current=0 box=1; Bryson Stott: AB current=4 box=3, RBI current=1 box=0, R current=0 box=1; Trea Turner: AB current=4 box=5, H current=1 box=0, R current=1 box=0, SO current=1 box=3; J.T. Realmuto: AB current=3 box=4, SO current=1 box=2; Luis Arraez: 2B current=1 box=0, SO current=0 box=1; Brandon Marsh: AB current=3 box=4, H current=1 box=3, 2B current=0 box=1, RBI current=0 box=2; Kyle Schwarber: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0 | PHI |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| SEA | Kade Anderson | 2 ER / 15 outs | 0 ER / 21 outs | -2 |
| COL | Tomoyuki Sugano | 2 ER / 14 outs | 1 ER / 15 outs | -1 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Kade Anderson (SEA) posted 0.00 ERA vs projected 3.60 (0 ER in 21 outs); no credible venue, opponent-strength or experience signal explains it — an outlier start (variance).
What to do: Variance — no model change is warranted for this start.
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Kade Anderson (SEA) threw 21 outs, 0 ER = 0 ERA against a projected 3.6 ERA (-3.6 ERA error) only 5 prior appearances in the covered season - the projection had little of his own record to stand on
Bullpen behind him: 1 ER over 3 outs.
The HOME lineup he faced produced 1 runs on 4 hits and 1 HR, against a projected 4 runs / 10 hits (-3 runs vs projection).
Who did the damage to him:
Verdict: offense: the lineup scored well below its projection
HOME pitching
Tomoyuki Sugano (COL) threw 15 outs, 1 ER = 1.8 ERA against a projected 3.86 ERA (-2.06 ERA error)
Bullpen behind him: 0 ER over 3 outs.
The AWAY lineup he faced produced 2 runs on 4 hits and 0 HR, against a projected 4 runs / 10 hits (-2 runs vs projection).
No individual hitter beat his projection by a meaningful margin.
Verdict: offense: the lineup scored well below its projection
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| SEA | Kade Anderson (Starter) | 21 / 15 | 0 / 3.6 (-3.60) | 0 / 2 | 3 / 7 | 0 / 0 | 0 / 2 | 1.65 | 7 / 4 | 4.25 | venue away: 7.27 vs 4.32 ERA (ok) · opp run factor 0.98 (average) · 5 prior appearances this season |
| SEA | Andrés Muñoz (Closer) | 1 / 4 | 27 / 0 (+27.00) | 1 / 0 | 1 / 1 | 1 / 0 | 1 / 0 | 0.46 | 0 / 0 | 1.54 | |
| SEA | Eduard Bazardo (Middle Reliever (High Leverage)) | 2 / 3 | 0 / 18 (-18.00) | 0 / 2 | 0 / 3 | 0 / 0 | 1 / 1 | 0.33 | 2 / 0 | 0.71 | |
| COL | Tomoyuki Sugano (Starter) | 15 / 14 | 1.8 / 3.86 | 1 / 2 | 1 / 5 | 0 / 1 | 2 / 2 | 1.3 | 5 / 1 | 3.3 | venue home: 5.35 vs 5.64 ERA (ok) · opp run factor 0.94 (weak) · 27 prior appearances this season |
| COL | Jimmy Herget (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 9 (-9.00) | 0 / 1 | 1 / 2 | 0 / 0 | 0 / 0 | 0.44 | 0 / 0 | 0.78 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Connor Norby (3B) | COL | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 2 / 1 | -1.11 | 0.307 average | no signal |
| Josh Naylor (1B) | SEA | 4 / 4 | 0 / 2 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | -0.94 | 0.313 average | no signal |
| Randy Arozarena (LF) | SEA | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 1 / 1 | -0.78 | 0.348 elite | bad day |
| Cal Raleigh (C) | SEA | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 1 | -0.47 | 0.313 average | — |
| Brock Rodden (3B) | SEA | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.242 weak | — |
| Cole Young (2B) | SEA | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | -0.47 | 0.314 average | — |
| Jordan Beck (RF) | COL | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.251 weak | — |
| Brett Sullivan (C) | COL | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.286 below average | — |
| TJ Rumfield (1B) | COL | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | -0.47 | 0.335 above average | — |
| Ezequiel Tovar (SS) | COL | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.28 weak | — |
| J.P. Crawford (SS) | SEA | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 1 / 0 | -0.33 | 0.323 above average | — |
| Hunter Goodman (DH) | COL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 1 / 1 | 0 / 1 | 2 / 1 | -0.33 | 0.322 above average | — |
| Adael Amador (2B) | COL | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 0 | 0 / 0 | 0.33 | 0.254 weak | — |
| Julio Rodríguez (CF) | SEA | 3 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | -0.31 | 0.333 above average | — |
| Cole Carrigg (CF) | COL | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 2 / 1 | -0.31 | 0.309 average | — |
| Dominic Canzone (RF) | SEA | 4 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 2 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -0.15 | 0.356 elite | — |
| Jake McCarthy (LF) | COL | 4 / 4 | 1 / 2 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | 0.15 | 0.326 above average | — |
| Lazaro Montes (DH) | SEA | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 2 / 1 | -0.14 | 0.357 elite | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.921 | positive favors home; negative favors away |
| Recent form | -0.936 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.038 | positive favors home; negative favors away |
| Composite | -1.196 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 5.67-4.25 | n/a | Base ML historical model prediction |
| variance_applied | 6-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 8-6 | 0.56 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by winner_starter_is_below_average, matchup_recency_guardrail) |
| embedded_savant_run_environment | 9-6 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 9-6 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 9-6 | n/a | Capped at max 12 realistic runs |
| simulation_result | 9-6 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 5.67-4.25 | 6-4 | 0.576 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 6-4 | 8-6 | -0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by winner_starter_is_below_average, matchup_recency_guardrail) |
| embedded_savant_run_environment | 8-6 | 9-6 | 1 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 9-6 | 9-6 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 9-6 | 9-6 | -0 | Capped at max 12 realistic runs |
| simulation_result | 9-6 | 9-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 |
|---|---|---|---|---|
| SEA | Cole Young | batter / 2B | better | predicted_RBI 3.54 |
| SEA | Lazaro Montes | batter / DH | better | predicted_AB 3.231 |
| COL | Brett Sullivan | batter / C | worse | predicted_AB 3 |
| COL | Adael Amador | batter / 2B | worse | predicted_AB 2.8 |
| COL | Connor Norby | batter / 3B | better | predicted_AB 2.796 |
| SEA | Dominic Canzone | batter / RF | better | predicted_AB 2.73 |
| COL | Cole Carrigg | batter / CF | better | predicted_RBI 2.422 |
| SEA | Brock Rodden | batter / 3B | better | predicted_AB 2.364 |
| 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 | 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 | COL model pitcher projections differ from final simulation pitching box score (ER: current=8, sim=9). | COL |
| info | CURRENT_FINALIZED_MATCH_BOX | COL model-prediction batting totals differ from final simulation box score (AB: current=33, sim=51; H: current=10, sim=15; 2B: current=2, sim=3; HR: current=1, sim=0; RBI: current=5, sim=6; R: current=4, sim=6; SO: current=7, sim=10; HBP: current=0, sim=3). | COL |
| info | CURRENT_PLAYER_MATCH_BOX | COL current finalized hitter lines are model predictions and differ from the simulation box score: Connor Norby: AB current=4 box=6, H current=1 box=2, R current=0 box=1, BB current=1 box=0; Cole Carrigg: AB current=4 box=6, H current=1 box=3, 2B current=1 box=0, RBI current=1 box=3; Hunter Goodman: AB current=4 box=6, H current=1 box=2, HR current=1 box=0, RBI current=1 box=0; Jake McCarthy: AB current=4 box=7, RBI current=1 box=0; Jordan Beck: AB current=3 box=4, BB current=0 box=1, HBP current=0 box=1; Adael Amador: AB current=4 box=6, H current=1 box=2, 2B current=0 box=1, SO current=0 box=2; Brett Sullivan: AB current=3 box=6, H current=1 box=0, RBI current=1 box=0, SO current=1 box=2; TJ Rumfield: AB current=4 box=5, H current=1 box=3, 2B current=0 box=1, RBI current=0 box=2 | COL |
| info | CURRENT_FINALIZED_MATCH_BOX | SEA model-prediction batting totals differ from final simulation box score (AB: current=34, sim=51; H: current=10, sim=15; 2B: current=2, sim=4; 3B: current=0, sim=1; HR: current=1, sim=4; RBI: current=5, sim=9; R: current=4, sim=9; HBP: current=0, sim=1). | SEA |
| info | CURRENT_PLAYER_MATCH_BOX | SEA current finalized hitter lines are model predictions and differ from the simulation box score: Dominic Canzone: AB current=4 box=6, H current=1 box=2, 3B current=0 box=1, HR current=1 box=0; Cal Raleigh: AB current=4 box=5, 2B current=0 box=1, RBI current=1 box=0, SO current=1 box=0; Randy Arozarena: AB current=4 box=6, H current=1 box=2, RBI current=1 box=0, BB current=1 box=0; J.P. Crawford: AB current=4 box=6, H current=1 box=0, BB current=1 box=0, SO current=0 box=2; Lazaro Montes: AB current=3 box=6, HR current=0 box=1, RBI current=1 box=2, R current=0 box=1; Brock Rodden: AB current=3 box=5, H current=1 box=2, R current=0 box=1, BB current=0 box=1; Julio Rodríguez: AB current=4 box=6, H current=1 box=2, HR current=0 box=1, RBI current=1 box=2; Josh Naylor: AB current=4 box=5, RBI current=0 box=1, R current=0 box=1, BB 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 | Matt Wilkinson | 4 ER / 13 outs | 0 ER / 15 outs | -4 |
| LAD | Jack Dreyer | 2 ER / 15 outs | 1 ER / 3 outs | -1 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Matt Wilkinson (SF) posted 0.00 ERA vs projected 8.31 (0 ER in 15 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
Matt Wilkinson (SF) threw 15 outs, 0 ER = 0 ERA against a projected 8.31 ERA (-8.31 ERA error) only 6 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 3 runs on 9 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
Jack Dreyer (LAD) threw 3 outs, 1 ER = 9 ERA against a projected 3.6 ERA (5.4 ERA error)
Bullpen behind him: 0 ER over 6 outs.
The AWAY lineup he faced produced 1 runs on 2 hits and 0 HR, against a projected 4 runs / 7 hits (-3 runs vs projection).
Who did the damage to him:
Verdict: pitching: the starter gave up runs at a far worse rate than projected
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| SF | Matt Wilkinson (Starter) | 15 / 13 | 0 / 8.31 (-8.31) | 0 / 4 | 3 / 4 | 0 / 0 | 0 / 4 | 0.99 | 6 / 5 | 2.53 | venue away: 8.31 vs 3 ERA (ok) · opp run factor 1.01 (strong) · 6 prior appearances this season |
| SF | Dylan Smith (Closer) | 3 / 4 | 9 / 20.25 (-11.25) | 1 / 3 | 1 / 3 | 0 / 1 | 0 / 0 | 0.54 | 0 / 1 | 1.1 | |
| SF | Trent Harris (Setup Man) | 2 / 3 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 0 | 0 / 0 | 0.27 | 1 / 1 | 1.34 | |
| SF | Carson Seymour (Middle Reliever (High Leverage)) | 3 / 4 | 9 / 0 (+9.00) | 1 / 0 | 2 / 0 | 1 / 0 | 0 / 1 | 0.6 | 0 / 1 | 0.89 | |
| LAD | Jack Dreyer (Starter) | 3 / 15 | 9 / 3.6 (+5.40) | 1 / 2 | 1 / 5 | 0 / 1 | 1 / 2 | 0 | 1 / 4 | 13.05 | opp run factor 1 (weak) · 63 prior appearances this season |
| LAD | Brock Stewart (Setup Man) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0.34 | 2 / 0 | 0.78 | |
| LAD | Tanner Scott (Closer) | 3 / 5 | 0 / 10.8 (-10.80) | 0 / 2 | 0 / 3 | 0 / 0 | 1 / 0 | 0.27 | 1 / 0 | 1.37 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Mookie Betts (SS) | LAD | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | -1.4 | 0.342 elite | bad day |
| Victor Bericoto (DH) | SF | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -0.93 | 0.303 below average | projection too high |
| Andrew Knizner (C) | SF | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 2 / 1 | -0.8 | 0.295 below average | projection too high |
| Tommy Edman (CF) | LAD | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0.62 | 0.303 below average | good day |
| Jonah Cox (2B) | SF | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 2 / 2 | -0.47 | 0.265 weak | — |
| Shay Whitcomb (3B) | SF | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.255 weak | — |
| Scott Bandura (LF) | SF | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | -0.47 | 0.153 weak | — |
| Christian Koss (SS) | SF | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 2 / 1 | -0.47 | 0.252 weak | — |
| Freddie Freeman (1B) | LAD | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 0.47 | 0.366 elite | — |
| Brett Harris (1B) | SF | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | 0.33 | 0.236 weak | — |
| Grant McCray (CF) | SF | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | -0.33 | 0.307 average | — |
| Enrique Hernández (LF) | LAD | 3 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0.31 | 0.274 weak | — |
| Miguel Rojas (2B) | LAD | 3 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0.31 | 0.31 average | — |
| Teoscar Hernández (RF) | LAD | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | 0.14 | 0.334 above average | — |
| Max Muncy (3B) | LAD | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | 0.14 | 0.35 elite | — |
| Jung Hoo Lee (RF) | SF | 2 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 0 | 0 / 1 | 0.02 | 0.314 average | — |
| Hunter Feduccia (C) | LAD | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.319 average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 1.648 | positive favors home; negative favors away |
| Recent form | 1.09 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.014 | positive favors home; negative favors away |
| Composite | 1.931 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 2.57-5.99 | n/a | Base ML historical model prediction |
| variance_applied | 3-6 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-7 | 0.58 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-8 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-8 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-8 | n/a | Capped at max 12 realistic runs |
| simulation_result | 4-8 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 2.57-5.99 | 3-6 | -0.418 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 3-6 | 5-7 | -1 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-7 | 4-8 | 2 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-8 | 4-8 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-8 | 4-8 | 0 | Capped at max 12 realistic runs |
| simulation_result | 4-8 | 4-8 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| LAD | Mookie Betts | batter / SS | better | predicted_RBI 4.1 |
| SF | Jonah Cox | batter / 2B | worse | predicted_AB 2.182 |
| SF | Victor Bericoto | batter / DH | worse | predicted_AB 2.156 |
| SF | Jung Hoo Lee | batter / RF | better | predicted_AB -2.14 |
| SF | Grant McCray | batter / CF | better | predicted_3B 1.963 |
| SF | Brett Harris | batter / 1B | better | predicted_H 1.583 |
| SF | Scott Bandura | batter / LF | worse | predicted_AB 1.5 |
| LAD | Miguel Rojas | batter / 2B | deboosted | predicted_AB 1.5 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| 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_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_FINALIZED_MATCH_BOX | LAD 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; RBI: current=4, sim=8; R: current=5, sim=8; BB: current=3, sim=5; SO: current=7, sim=8). | LAD |
| info | CURRENT_PLAYER_MATCH_BOX | LAD current finalized hitter lines are model predictions and differ from the simulation box score: Teoscar Hernández: 2B current=0 box=1, BB current=1 box=0; Tommy Edman: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Mookie Betts: AB current=4 box=3, RBI current=1 box=5, BB current=0 box=1; Josue De Paula: AB current=3 box=2, BB current=1 box=2; Enrique Hernández: 2B current=0 box=1, RBI current=0 box=1, R current=0 box=1, BB current=0 box=1; Miguel Rojas: AB current=3 box=4, RBI current=0 box=1, R current=0 box=1; Max Muncy: RBI current=1 box=0, BB current=1 box=0; Freddie Freeman: H current=1 box=0, R current=1 box=0, SO current=1 box=2 | LAD |
| info | CURRENT_FINALIZED_MATCH_BOX | SF model pitcher projections differ from final simulation pitching box score (ER: current=7, sim=8). | SF |
| info | CURRENT_FINALIZED_MATCH_BOX | SF model-prediction batting totals differ from final simulation box score (AB: current=30, sim=36; H: current=7, sim=10; 3B: current=0, sim=3; BB: current=3, sim=2; SO: current=10, sim=6; SF: 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: Jonah Cox: AB current=4 box=5, BB current=1 box=0; Victor Bericoto: AB current=4 box=5, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Brett Harris: AB current=3 box=4, H current=0 box=2; Shay Whitcomb: AB current=3 box=4, HR current=0 box=1, R current=0 box=1, SO current=1 box=0; Jung Hoo Lee: AB current=4 box=3, H current=1 box=2, 3B current=0 box=1, RBI current=1 box=2; Andrew Knizner: AB current=3 box=4, H current=1 box=0, BB current=1 box=0, SO current=1 box=0; Scott Bandura: AB current=3 box=4; Grant McCray: H current=0 box=2, 3B current=0 box=2, R current=0 box=1, SO current=1 box=0 | SF |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| TOR | Spencer Miles | 3 ER / 18 outs | 0 ER / 9 outs | -3 |
| TEX | Jacob deGrom | 2 ER / 17 outs | 3 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:
Starter miss: Spencer Miles (TOR) posted 0.00 ERA vs projected 4.50 (0 ER in 9 outs); he is materially worse pitching away (9.00 ERA there vs 4.91 on the other side), a venue-role weakness the model under-weighted.
What to do: Enable/raise the venue-split weight (context.venue_adjustment_weight) and validate in shadow; the split is credible for this starter.
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Spencer Miles (TOR) threw 9 outs, 0 ER = 0 ERA against a projected 4.5 ERA (-4.5 ERA error)
Bullpen behind him: 0 ER over 6 outs.
The HOME lineup he faced produced 2 runs on 5 hits and 1 HR, against a projected 4 runs / 6 hits (-2 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Jacob deGrom (TEX) threw 13 outs, 3 ER = 6.23 ERA against a projected 3.18 ERA (3.05 ERA error)
Bullpen behind him: 1 ER over 2 outs.
The AWAY lineup he faced produced 5 runs on 9 hits and 0 HR, against a projected 4 runs / 7 hits (1 runs vs projection).
Who did the damage to him:
Verdict: both: the starter was hit hard AND the lineup underproduced
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| TOR | Spencer Miles (Starter) | 9 / 18 | 0 / 4.5 (-4.50) | 0 / 3 | 2 / 2 | 0 / 1 | 0 / 1 | 0.75 | 4 / 3 | 3.01 | venue away: 9 vs 4.91 ERA (worse here) · opp run factor 1.06 (average) · 47 prior appearances this season |
| TOR | Louis Varland (Closer) | 3 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 0.31 | 0 / 1 | 1.21 | |
| TOR | Tyler Rogers (Setup Man) | 3 / 3 | 0 / 9 (-9.00) | 0 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0.25 | 0 / 2 | 0.57 | |
| TEX | Jacob deGrom (Starter) | 13 / 17 | 6.23 / 3.18 (+3.05) | 3 / 2 | 5 / 4 | 0 / 2 | 4 / 2 | 1.31 | 2 / 7 | 7.21 | venue home: 2.53 vs 5.35 ERA (ok) · opp run factor 0.95 (weak) · 29 prior appearances this season |
| TEX | Chase Silseth (Middle Reliever (High Leverage)) | 2 / 3 | 13.5 / 0 (+13.50) | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0.46 | 1 / 1 | 1.32 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Corey Seager (DH) | TEX | 5 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -1.73 | 0.354 elite | bad day |
| Jake Burger (1B) | TEX | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | 1 / 1 | 1 / 0 | 0 / 1 | 1.26 | 0.318 average | no signal |
| Evan Carter (CF) | TEX | 4 / 3 | 3 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1.08 | 0.273 weak | good day |
| Kazuma Okamoto (3B) | TOR | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -0.93 | 0.329 above average | bad day |
| Nathan Lukes (RF) | TOR | 3 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 2 / 0 | 1 / 0 | 0 / 1 | 0.8 | 0.286 below average | good day |
| Brandon Valenzuela (C) | TOR | 3 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0.8 | 0.31 average | no signal |
| Sean Keys (DH) | TOR | 2 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 1 / 0 | 0 / 1 | 0.64 | 0.24 weak | good day |
| Vladimir Guerrero Jr. (1B) | TOR | 2 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -0.64 | 0.335 above average | bad day |
| Brett Bateman (CF) | TOR | 3 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 3 / 1 | 2 / 1 | 1 / 1 | 0.64 | 0.3 below average | good day |
| Josh Jung (3B) | TEX | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 3 / 1 | -0.47 | 0.349 elite | — |
| Nicky Lopez (2B) | TEX | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | -0.47 | 0.264 weak | — |
| Wyatt Langford (LF) | TEX | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 2 / 1 | 1 / 1 | 0.33 | 0.325 above average | — |
| Ernie Clement (2B) | TOR | 4 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.31 | 0.26 weak | — |
| Ezequiel Duran (SS) | TEX | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 1 / 0 | 2 / 1 | -0.14 | 0.303 below average | — |
| Josh Smith (LF) | TOR | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.282 weak | — |
| Andrés Giménez (SS) | TOR | 5 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.273 weak | — |
| Danny Jansen (C) | TEX | 4 / 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.246 | positive favors home; negative favors away |
| Recent form | 0.802 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.115 | positive favors home; negative favors away |
| Composite | 0.948 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.63-4.1 | n/a | Base ML historical model prediction |
| variance_applied | 5-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 3-4 | 0.55 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 2-4 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 2-4 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 2-4 | n/a | Capped at max 12 realistic runs |
| simulation_result | 2-4 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.63-4.1 | 5-4 | -0.475 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 3-4 | 2 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 3-4 | 2-4 | 1 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 2-4 | 2-4 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 2-4 | 2-4 | 0 | Capped at max 12 realistic runs |
| simulation_result | 2-4 | 2-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 |
|---|---|---|---|---|
| TOR | Brett Bateman | batter / CF | worse | predicted_AB -2.64 |
| TOR | Josh Smith | batter / LF | worse | predicted_SO 2.271 |
| TEX | Josh Jung | batter / 3B | worse | predicted_AB -1.65 |
| TEX | Nicky Lopez | batter / 2B | worse | predicted_SO 1.512 |
| TOR | Nathan Lukes | batter / RF | better | predicted_SO 1.452 |
| TEX | Ezequiel Duran | batter / SS | better | predicted_RBI 1.41 |
| TEX | Brandon Nimmo | batter / RF | worse | predicted_AB -1.39 |
| TOR | Sean Keys | batter / DH | worse | predicted_AB 1.294 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| 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_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 | TEX model-prediction batting totals differ from final simulation box score (AB: current=32, sim=28; H: current=7, sim=4; 3B: current=0, sim=1; SO: current=8, sim=6). | TEX |
| info | CURRENT_PLAYER_MATCH_BOX | TEX current finalized hitter lines are model predictions and differ from the simulation box score: Corey Seager: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Josh Jung: AB current=4 box=3, H current=1 box=0, R current=1 box=0, BB current=0 box=1; Ezequiel Duran: AB current=4 box=3, 3B current=0 box=1, RBI current=1 box=2, R current=0 box=1; Brandon Nimmo: AB current=4 box=3, 2B current=1 box=0, HR current=0 box=1, R current=0 box=1; Wyatt Langford: H current=1 box=0, R current=1 box=0, BB current=1 box=0; Jake Burger: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=1 box=0; Nicky Lopez: H current=1 box=0, SO current=0 box=2; Danny Jansen: AB current=3 box=2, H current=0 box=1, R current=0 box=1, BB current=0 box=1 | TEX |
| info | CURRENT_FINALIZED_MATCH_BOX | TOR model pitcher projections differ from final simulation pitching box score (H: current=3, sim=4; BB: current=2, sim=3). | TOR |
| info | CURRENT_FINALIZED_MATCH_BOX | TOR model-prediction batting totals differ from final simulation box score (H: current=7, sim=4; 2B: current=1, sim=0; HR: current=1, sim=2; RBI: current=4, sim=2; R: current=4, sim=2; SO: current=9, sim=10). | TOR |
| info | CURRENT_PLAYER_MATCH_BOX | TOR current finalized hitter lines are model predictions and differ from the simulation box score: Nathan Lukes: HR current=0 box=1, RBI current=0 box=1, R current=0 box=1, SO current=1 box=2; Sean Keys: AB current=3 box=4, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Kazuma Okamoto: HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Josh Smith: AB current=3 box=4, H current=0 box=1, HR current=0 box=1, RBI current=0 box=1; Vladimir Guerrero Jr.: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Brett Bateman: AB current=4 box=3, H current=1 box=0, R current=1 box=0; Andrés Giménez: RBI current=1 box=0, SO current=1 box=0; Ernie Clement: H current=1 box=0 | TOR |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| WAS | Jake Irvin | 2 ER / 15 outs | 2 ER / 16 outs | 0 |
| STL | Quinn Mathews | 4 ER / 17 outs | 3 ER / 21 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
Jake Irvin (WAS) threw 16 outs, 2 ER = 3.38 ERA against a projected 3.6 ERA (-0.22 ERA error)
Bullpen behind him: 1 ER over 2 outs.
The HOME lineup he faced produced 5 runs on 6 hits and 3 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
Quinn Mathews (STL) threw 21 outs, 3 ER = 3.86 ERA against a projected 6.35 ERA (-2.49 ERA error) only 7 prior appearances in the covered season - the projection had little of his own record to stand on
Bullpen behind him: 0 ER over 3 outs.
The AWAY lineup he faced produced 3 runs on 7 hits and 1 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| WAS | Jake Irvin (Starter) | 16 / 15 | 3.38 / 3.6 | 2 / 2 | 3 / 3 | 1 / 1 | 0 / 2 | 2.66 | 8 / 6 | 4.95 | venue away: 4.76 vs 6.75 ERA (ok) · opp run factor 0.96 (average) · 20 prior appearances this season |
| WAS | Erik Tolman (Closer) | 2 / 3 | 13.5 / 0 (+13.50) | 1 / 0 | 1 / 1 | 1 / 0 | 0 / 0 | 0.46 | 0 / 0 | 1.01 | |
| STL | Quinn Mathews (Starter) | 21 / 17 | 3.86 / 6.35 | 3 / 4 | 7 / 4 | 1 / 2 | 2 / 3 | 2.15 | 3 / 9 | 4.63 | venue home: 1.46 vs 4.68 ERA (ok) · opp run factor 0.99 (strong) · 7 prior appearances this season |
| STL | Riley O'Brien (Closer) | 3 / 3 | 0 / 18 (-18.00) | 0 / 2 | 0 / 1 | 0 / 1 | 0 / 0 | 0.49 | 0 / 1 | 0.96 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Iván Herrera (DH) | STL | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 2 / 0 | 2 / 0 | 2 / 1 | 0 / 1 | 1 / 1 | 2 | 0.332 above average | projection too low |
| James Wood (DH) | WAS | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | -1.73 | 0.411 elite | bad day |
| Alec Burleson (1B) | STL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -1.73 | 0.375 elite | bad day |
| Leonardo Bernal (C) | STL | 3 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 2 / 1 | 1 / 0 | 1 / 0 | 1 / 1 | 0.95 | 0.359 elite | projection too low |
| CJ Abrams (2B) | WAS | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | 1 / 1 | 0 / 0 | 1 / 1 | 0.93 | 0.328 above average | projection too low |
| Brady House (3B) | WAS | 2 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 1 | 0.8 | 0.336 above average | projection too low |
| Dylan Crews (RF) | WAS | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | -0.78 | 0.315 average | no signal |
| Andrés Chaparro (1B) | WAS | 2 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 0 / 1 | -0.78 | 0.346 elite | bad day |
| Daylen Lile (LF) | WAS | 4 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 0 | 0 / 1 | 0.78 | 0.326 above average | projection too low |
| José Fermín (3B) | STL | 3 / 3 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0.78 | 0.293 below average | good day |
| Thomas Saggese (SS) | STL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | -0.47 | 0.313 average | — |
| Nathan Church (CF) | STL | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | -0.47 | 0.29 below average | — |
| Jordan Walker (RF) | STL | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 0 | 1 / 1 | -0.45 | 0.342 elite | — |
| Harry Ford (C) | WAS | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | -0.33 | 0.287 below average | — |
| JJ Wetherholt (2B) | STL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | -0.33 | 0.35 elite | — |
| Nasim Nuñez (SS) | WAS | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.267 weak | — |
| Jacob Young (CF) | WAS | 2 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 | 0.316 average | — |
| Bryan Torres (LF) | STL | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.293 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.353 | positive favors home; negative favors away |
| Recent form | -0.646 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.029 | positive favors home; negative favors away |
| Composite | -0.42 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.33-5.08 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 0.512 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by winner_starter_is_below_average, projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-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.33-5.08 | 4-5 | -0.258 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 5-4 | 2 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by winner_starter_is_below_average, projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-4 | 5-5 | -1 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-5 | 6-5 | 1 | 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 |
|---|---|---|---|---|
| WAS | James Wood | batter / DH | better | predicted_RBI 3.406 |
| STL | Leonardo Bernal | batter / C | worse | predicted_AB -3.35 |
| STL | Bryan Torres | batter / LF | better | predicted_RBI 2.712 |
| WAS | Harry Ford | batter / C | worse | predicted_SO 2.161 |
| WAS | Brady House | batter / 3B | worse | predicted_SO 2 |
| WAS | Daylen Lile | batter / LF | worse | predicted_AB -1.54 |
| WAS | Andrés Chaparro | batter / 1B | better | predicted_AB 1.451 |
| STL | Nathan Church | batter / CF | worse | predicted_SO 1.385 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| warning | INNING_OUTS | Inning 9 home has outs=0; expected 3 for a played half inning. | |
| warning | PITCH_COUNT_PITCHER_MATCH | WAS pitch_count row for Jake Irvin differs from pitching box score: batters_faced/BF: summary=20, box=17. | WAS Jake Irvin |
| 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_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 | STL model-prediction batting totals differ from final simulation box score (AB: current=33, sim=31; H: current=8, sim=7; 2B: current=2, sim=1; 3B: current=0, sim=1; HR: current=1, sim=2; RBI: current=4, sim=5; R: current=4, sim=5; SO: current=7, sim=6). | STL |
| info | CURRENT_PLAYER_MATCH_BOX | STL current finalized hitter lines are model predictions and differ from the simulation box score: JJ Wetherholt: AB current=4 box=3, H current=1 box=0, R current=1 box=0, SO current=1 box=2; Leonardo Bernal: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Thomas Saggese: AB current=4 box=3, R current=0 box=1, BB current=0 box=1, SO current=1 box=0; Bryan Torres: AB current=3 box=4, H current=0 box=2, 3B current=0 box=1, HR current=0 box=1; Iván Herrera: 2B current=0 box=1, RBI current=0 box=1, BB current=1 box=0; Alec Burleson: BB current=1 box=0, SO current=1 box=0; José Fermín: RBI current=1 box=0; Jordan Walker: 2B current=1 box=0, RBI current=1 box=0, SO current=1 box=0 | STL |
| info | CURRENT_FINALIZED_MATCH_BOX | WAS model-prediction batting totals differ from final simulation box score (AB: current=33, sim=32; H: current=8, sim=5; 2B: current=2, sim=0; HR: current=1, sim=3; RBI: current=4, sim=6; R: current=5, sim=6; BB: current=3, sim=4; SO: current=8, sim=14). | WAS |
| info | CURRENT_PLAYER_MATCH_BOX | WAS current finalized hitter lines are model predictions and differ from the simulation box score: James Wood: AB current=4 box=2, RBI current=1 box=4, BB current=1 box=2, SO current=1 box=0; CJ Abrams: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, BB current=0 box=1; Brady House: H current=1 box=0, SO current=1 box=3; Dylan Crews: 2B current=1 box=0, HR current=0 box=1, RBI current=0 box=1, R current=0 box=1; Andrés Chaparro: 2B current=1 box=0, HR current=0 box=1, R current=0 box=1, BB current=1 box=0; Daylen Lile: AB current=4 box=3, RBI current=1 box=0, BB current=0 box=1, SO current=1 box=0; Nasim Nuñez: AB current=3 box=4, SO current=1 box=2; Harry Ford: AB current=3 box=4, H current=1 box=0, R current=1 box=0, BB current=1 box=0 | WAS |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
Each candidate fix, and exactly which games it would help versus hurt. A lever that repairs one game and breaks two is visible here before it is proposed.
Compared against packet 20260919. 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.2434 | 0.2393 | -0.004072 | improved |
| accuracy | 0.6083 | 0.6 | -0.0083 | regressed |
| team_run_mae | 2.3917 | 2.5042 | +0.1125 | regressed |
| total_run_mae | 3.2833 | 3.3583 | +0.075 | regressed |
| calibration_error | 0.0875 | 0.0885 | +0.001 | regressed |
| starter_er_mae | 1.6653 | 1.6855 | +0.0202 | regressed |
| starter_outs_mae | 3.2782 | 3.4839 | +0.2057 | regressed |
| Parameter | Change | Expected effect | Risk | Evidence |
|---|---|---|---|---|
| score.variance_multiplier | 2.05 → 2.15 | team_run_mae decrease | low risk | metric.team_run_mae, metric.total_run_mae, errors.miss_reasons, pipeline.largest_team_run_regression, metric.brier_score |