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_20260905.json | 376581 |
| forensic deep audit | loaded | probability, provenance, starter and decision contracts | /app/output/reports/PREDICTION_SYSTEM_DEEP_AUDIT_20260905.json | 241224 |
| continuous learning | loaded | pipeline-stage quality, calibration, probability lineage, score distribution, and official starter comparisons | /app/output/learning/continuous_learning_daily_20260905.json | 2499160 |
| detailed report | loaded | full game and simulation rendering | /app/output/reports/detailed_20260905.html | 355886 |
| ultra detailed player audit | loaded | player-level prediction trace | /app/output/reports/20260905_ultra_detailed_player_audit.html | 30881727 |
| structural audit | loaded | all invariant findings | /app/output/reports/audit_report_20260905.html | 1848251 |
| integrity revision audit | missing | post-Luna remediation proof for immutable revision artifacts | /app/output/reports/audit_report_20260905_integrity_revision.html | n/a |
Deterministic findings across data integrity, model validation, calibration, score distribution, pipeline stages, simulation, and coverage. Critical is reserved for broken evidence or an unexplained contract violation; high marks material model/process risk. Each row pairs the action to take (Do this) with the wrong conclusion to avoid (Don't conclude).
| Severity | Domain | Finding and evidence | Affected | Action & guardrail |
|---|---|---|---|---|
| CRITICAL | probability_lineage | Published probability differs materially without a recorded transformation 3 game(s) have an unexplained ≥2pp calibrated-to-published delta | ATL@PHI, LAA@PIT, WAS@LAD | Do thisBlock any promotion until the missing probability transformation is recorded and reconciled. Don't concludeDo not assume the probability governor was bypassed until you have traced the pick-side math. |
| HIGH | pipeline_stages | An intermediate stage materially degraded winner direction historical_ml → variance_applied changed winner accuracy by -0.2000 (-3 hits) | NYY@SD, SF@NYM, TB@TEX | 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 | model_validation | Validated run models explain very little holdout variance home/away/total R² = 0.0106/0.0203/0.0176 | ARI@HOU, ATL@PHI, BOS@BAL, CHC@MIA, DET@CLE, LAA@PIT, MIL@CIN, MIN@CHW, NYY@SD, OAK@SEA, SF@NYM, STL@COL, TB@TEX, TOR@KC, WAS@LAD | Do thisTreat exact run scores as low-confidence estimates, and look for stronger features or a better target before tuning the score tails. Don't concludeA small positive R² only means the model beats guessing the average; it does not make the exact scores reliable. |
| MEDIUM | calibration | Most high-raw picks lost before/after shrinkage 1/3 games with raw pick probability ≥0.65 won | CHC@MIA, LAA@PIT, MIL@CIN | Do thisTrack how often high-raw-probability picks lose across multiple slates, and keep the raw to calibrated to published lineage. Don't concludeThis one slate is not enough to justify a new per-bucket shrinkage rule. |
| INFO | coverage | Every settled game received structural QA 15/15 games structurally audited | ARI@HOU, ATL@PHI, BOS@BAL, CHC@MIA, DET@CLE, LAA@PIT, MIL@CIN, MIN@CHW, NYY@SD, OAK@SEA, SF@NYM, STL@COL, TB@TEX, TOR@KC, WAS@LAD | Do thisKeep the per-game audit receipt in every report. Don't concludeFull audit coverage does not cancel the findings raised inside the audited games. |
| INFO | simulation | Simulation produced no winner-direction intervention on this slate flip candidates 0; published flips 0 | ARI@HOU, ATL@PHI, BOS@BAL, CHC@MIA, DET@CLE, LAA@PIT, MIL@CIN, MIN@CHW, NYY@SD, OAK@SEA, SF@NYM, STL@COL, TB@TEX, TOR@KC, WAS@LAD | Do thisMeasure the simulation's contribution across rolling slates, separating score realization from winner flipping. Don't concludeZero winner flips is not a defect and does not mean the simulation did no score-reconciliation work. |
A finding that has repeated at or beyond the escalation streak is no longer single-slate noise. It carries its target registered lever and an action-oriented guardrail.
| Finding | Persistence | Target lever(s) | Direction | Guardrail |
|---|---|---|---|---|
| simulation_inert_on_slate | 9 consecutive · 9 in window | simulation.allow_score | confirm the simulation module is running, not silently no-oping | simulation_inert_on_slate has persisted 9 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 | 9 consecutive · 9 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 9 consecutive slates; this is no longer single-slate noise. Treat it as an actionable pattern and raise the code/diagnostic action named; do not force a parameter move. |
| Finding | Consecutive slates | Incidence | Present now | Fix type |
|---|---|---|---|---|
| high_raw_probability_cluster | 1 | 3/9 | yes | param |
| pipeline_winner_instability | 1 | 4/9 | yes | code/diagnostic |
| score_margin_compression | 0 | 3/9 | no | param |
| simulation_inert_on_slate | 9 | 9/9 | yes | code/diagnostic |
| single_slate_calibration_instability | 0 | 5/9 | no | param |
| weak_run_model_signal | 9 | 9/9 | yes | code/diagnostic |
| Metric | Direction | Series (old → new) |
|---|---|---|
| winner_accuracy | regressing | [0.4667, 0.9412, 0.5, 0.6667, 0.4667, 0.3333, 0.5556, 0.625, 0.5333] |
| weighted_calibration_error | improving | [0.2179, 0.3961, 0.0693, 0.1661, 0.2476, 0.21, 0.1474, 0.1316, 0.1] |
| margin_bias | improving | [-1.333, -1.882, -2.786, -3.5, -2.533, -3.067, -1.778, -0.688, -1.467] |
| team_run_error_on_losses | improving | [5.0, 3.0, 7.0, 8.25, 7.125, 6.4, 6.75, 6.0, 5.286] |
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 | 8/15 | 53.3% | 1.873 | 2.562 | 3.058 |
| variance_applied | 5/15 | 33.3% | 1.833 | 2.467 | 3 |
| enhanced_prediction | 8/15 | 53.3% | 1.967 | 3.133 | 3.267 |
| embedded_savant_run_environment | 8/15 | 53.3% | 2 | 3.2 | 3.333 |
| fundamental_edge_target_review | 8/15 | 53.3% | 2 | 3.2 | 3.333 |
| capped_target | 8/15 | 53.3% | 2 | 3.2 | 3.333 |
| simulation_result | 8/15 | 53.3% | 2 | 3.2 | 3.333 |
| published_final | 8/15 | 53.3% | 2 | 3.2 | 3.333 |
| Transition | Δ accuracy | Δ hits | Δ team-run MAE | Δ margin MAE | Games whose winner/tie changed |
|---|---|---|---|---|---|
| historical_ml → variance_applied | -0.2 | -3 | -0.0396 | -0.0583 | MIL@CIN: MIL → TIE; NYY@SD: NYY → TIE; SF@NYM: SF → TIE; TB@TEX: TB → TIE |
| variance_applied → enhanced_prediction | 0.2 | 3 | 0.1334 | 0.2667 | ATL@PHI: PHI → ATL; CHC@MIA: MIA → CHC; MIL@CIN: TIE → MIL; NYY@SD: TIE → NYY; SF@NYM: TIE → NYM; TB@TEX: TIE → TB; TOR@KC: KC → TOR |
| enhanced_prediction → embedded_savant_run_environment | 0 | 0 | 0.0333 | 0.0666 | |
| embedded_savant_run_environment → fundamental_edge_target_review | 0 | 0 | 0 | 0 | |
| fundamental_edge_target_review → capped_target | 0 | 0 | 0 | 0 | |
| capped_target → simulation_result | 0 | 0 | 0 | 0 | |
| simulation_result → published_final | 0 | 0 | 0 | 0 |
All columns are pick-side probabilities, so away favorites are not accidentally compared using home-side semantics.
| Game | Outcome | Raw model | Calibrated | Governor | Score coherence | Published | Explanation |
|---|---|---|---|---|---|---|---|
| ARI@HOU | hit | 0.5085 | 0.5083 | 0.5083 | 0.5463 | 0.5171 | score coherence followed by matchup-recency guardrail |
| ATL@PHI | miss | 0.5028 | 0.505 | 0.505 | 0.5447 | 0.538 | no recorded transformation explains the publication delta |
| BOS@BAL | hit | 0.5052 | 0.5051 | 0.5051 | 0.5447 | 0.5323 | score coherence followed by matchup-recency guardrail |
| CHC@MIA | hit | 0.7723 | 0.7404 | 0.7404 | 0.7395 | 0.7395 | score_coherence aligned probability to the published score margin |
| DET@CLE | miss | 0.568 | 0.5663 | 0.5663 | 0.5753 | 0.5544 | score coherence followed by matchup-recency guardrail |
| LAA@PIT | miss | 0.67 | 0.6591 | 0.6591 | 0.6621 | 0.6357 | no recorded transformation explains the publication delta |
| MIL@CIN | miss | 0.7085 | 0.6861 | 0.6861 | 0.7124 | 0.54 | score coherence followed by matchup-recency guardrail |
| MIN@CHW | hit | 0.5085 | 0.5083 | 0.5083 | 0.5463 | 0.53 | score coherence followed by matchup-recency guardrail |
| NYY@SD | hit | 0.551 | 0.5499 | 0.5499 | 0.5671 | 0.5485 | published probability matches the calibrated/governed value |
| OAK@SEA | miss | 0.5085 | 0.5083 | 0.5083 | 0.5463 | 0.53 | score coherence followed by matchup-recency guardrail |
| SF@NYM | miss | 0.5016 | 0.505 | 0.505 | 0.5447 | 0.5236 | no recorded transformation explains the publication delta |
| STL@COL | miss | 0.5085 | 0.5083 | 0.5083 | 0.5463 | 0.5092 | published probability matches the calibrated/governed value |
| TB@TEX | hit | 0.5085 | 0.5083 | 0.5083 | 0.5463 | 0.5335 | score coherence followed by matchup-recency guardrail |
| TOR@KC | hit | 0.6256 | 0.6202 | 0.6202 | 0.6426 | 0.57 | score coherence followed by matchup-recency guardrail |
| WAS@LAD | hit | 0.6275 | 0.6219 | 0.6219 | 0.6032 | 0.5734 | no recorded transformation explains the publication delta |
One blown start is noise. The same failure repeating across the slate is a model problem. These are the repeats.
| Sides analyzed | Broke on pitching | Broke on offense | Both | Variance | Mean starter ERA error | Mean lineup runs vs proj |
|---|---|---|---|---|---|---|
| 30 | 2 | 6 | 2 | 20 | -1.17 | -0.07 |
no artifact on this slate records an applied trained winner blend (regenerate the slate to populate it)
A bias on one slate is noise. The same sign across slates, large relative to how much it moves between them, is a model defect. Only the ones that pass both tests are turned into a named parameter change; the rest are held deliberately.
starter ERA error (actual minus projected)
Mean 0.22 over 7 slates (sign shared by 0.57 of them, z = 0.65).
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
4 of 7 slates share the sign, mean 0.22 +/- 0.33 standard error: not separable from noise
lineup runs actual minus projected
Mean -0.03 over 7 slates (sign shared by 0.57 of them, z = -0.11).
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
4 of 7 slates share the sign, mean -0.03 +/- 0.23 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 |
|---|---|---|---|---|---|---|
| 20260905 | 15 | 0.533 | -1.17 | -0.07 | 2 | 6 |
| 20260904 | 16 | 0.625 | -0.23 | -0.44 | 5 | 12 |
| 20260903 | 9 | 0.556 | 0.24 | -0.83 | 4 | 6 |
| 20260902 | 15 | 0.333 | 0.72 | 0.30 | 7 | 6 |
| 20260901 | 15 | 0.467 | 1.48 | 1.07 | 9 | 3 |
| 20260831 | 12 | 0.667 | 0.83 | 0.08 | 2 | 7 |
| 20260830 | 14 | 0.500 | -0.36 | -0.29 | 3 | 7 |
| 20260829 | 17 | 0.941 | — | — | ||
| 20260828 | 15 | 0.467 | — | — |
Narrow predicted margins next to wide actual margins is the signature the score-variance tail is too tight.
| Game | Pred margin | Actual margin | Pred − actual |
|---|---|---|---|
| ARI@HOU | 1 | 1 | 0 |
| ATL@PHI | 1 | 2 | -1 |
| BOS@BAL | 1 | 5 | -4 |
| CHC@MIA | 3 | 1 | 2 |
| DET@CLE | 1 | 6 | -5 |
| LAA@PIT | 2 | 5 | -3 |
| MIL@CIN | 3 | 2 | 1 |
| MIN@CHW | 1 | 2 | -1 |
| NYY@SD | 1 | 4 | -3 |
| OAK@SEA | 2 | 4 | -2 |
| SF@NYM | 1 | 4 | -3 |
| STL@COL | 1 | 3 | -2 |
| TB@TEX | 1 | 3 | -2 |
| TOR@KC | 2 | 1 | 1 |
| WAS@LAD | 1 | 1 | 0 |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| ARI | Brandon Pfaadt | 4 ER / 19 outs | 3 ER / 19 outs | -1 |
| HOU | Ethan Pecko | 4 ER / 12 outs | 1 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: Ethan Pecko (HOU) posted 2.08 ERA vs projected 9.00 (1 ER in 13 outs). Thin prior record (3 prior appearances this season): high projection uncertainty.
What to do: Reduce game confidence for starters the feed has little on (scale by prior appearances); prefer priors and validate any run-param change in shadow.
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
No settled pitching line for this club. The forecast named Brandon Pfaadt (ARI) at a projected 5.68 ERA, but the per-player feed carries no pitching row for him in this game, so the actual-versus-projected comparison cannot be made on this side. That is a source-coverage gap in the settled box, not a forecasting failure.
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 3 runs on 9 hits and 0 HR, against a projected 4 runs / 8 hits (-1 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Ethan Pecko (HOU) threw 13 outs, 1 ER = 2.08 ERA against a projected 9 ERA (-6.92 ERA error) only 3 prior appearances in the covered season - the projection had little of his own record to stand on
Bullpen behind him: 1 ER over 13 outs.
The AWAY lineup he faced produced 3 runs on 8 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)
| Team | Pitcher | Outs | ERA | ER | H | HR | BB | SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|
| HOU | Ethan Pecko (Starter) | 13 / 12 | 2.08 / 9 (-6.92) | 1 / 4 | 5 / 6 | 0 / 1 | 1 / 2 | 2 / 5 | venue home: 4.91 vs 6.75 ERA (ok) · opp run factor 1.01 (average) · thin sample: 3 prior appearances this season (high uncertainty) |
| HOU | AJ Blubaugh (Middle Reliever (High Leverage)) | 5 / 4 | 5.4 / 6.75 | 1 / 1 | 2 / 2 | 1 / 0 | 0 / 1 | 2 / 1 | |
| HOU | Enyel De Los Santos (Middle Reliever (High Leverage)) | 5 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | |
| HOU | Josh Hader (Closer) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 |
Hitters: actual / projected (sorted by run impact vs projection)
| Team | Batter | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| HOU | Cam Smith (RF) | 4 / 3 | 2 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1.56 | 0.319 average | no signal |
| HOU | Yordan Alvarez (DH) | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | 2 / 1 | -1.07 | 0.45 elite | bad day |
| ARI | Geraldo Perdomo (SS) | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0 / 1 | 1 / 0 | -0.8 | 0.327 above average | bad day |
| ARI | Tim Tawa (1B) | 3 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 1 / 0 | 2 / 1 | 0.8 | 0.304 below average | good day |
| ARI | Ketel Marte (2B) | 5 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0.62 | 0.349 elite | projection too low |
| ARI | Gabriel Moreno (C) | 5 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -0.48 | 0.366 elite | — |
| ARI | Lars Nootbaar (DH) | 3 / 4 | 2 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 1 / 1 | 0 / 1 | 0.47 | 0.346 elite | — |
| ARI | Max Kepler (LF) | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | -0.47 | 0.27 weak | — |
| HOU | Jeremy Peña (SS) | 5 / 5 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 2 / 1 | -0.47 | 0.326 above average | — |
| HOU | Christian Walker (1B) | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.3 below average | — |
| HOU | Taylor Trammell (LF) | 4 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 2 / 1 | 0.31 | 0.285 below average | — |
| HOU | Isaac Paredes (3B) | 5 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 3 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | -0.17 | 0.32 average | — |
| HOU | Yainer Diaz (C) | 4 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 1 / 1 | 0.16 | 0.304 below average | — |
| ARI | Ryan Waldschmidt (CF) | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | -0.14 | 0.304 below average | — |
| ARI | Corbin Carroll (RF) | 5 / 5 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -0.02 | 0.342 elite | — |
| HOU | Jose Altuve (2B) | 5 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | -0.02 | 0.272 weak | — |
| ARI | Nolan Arenado (3B) | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.282 weak | — |
| HOU | Daulton Varsho (CF) | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.292 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.033 | positive favors home; negative favors away |
| Recent form | 0.706 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.014 | positive favors home; negative favors away |
| Composite | 0.01 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 5.44-3.52 | 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.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 | 5-4 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-4 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-4 | n/a | Capped at max 12 realistic runs |
| simulation_result | 5-4 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 5.44-3.52 | 5-4 | -0.914 | 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 |
|---|---|---|---|---|
| HOU | Jeremy Peña | batter / SS | worse | predicted_RBI 2.57 |
| ARI | Lars Nootbaar | batter / DH | worse | predicted_SO 2.268 |
| HOU | Daulton Varsho | batter / CF | worse | predicted_SO 2.202 |
| HOU | Taylor Trammell | batter / LF | worse | predicted_AB -1.779 |
| ARI | Gabriel Moreno | batter / C | worse | predicted_2B 1.739 |
| ARI | Max Kepler | batter / LF | better | predicted_RBI 1.72 |
| HOU | Yordan Alvarez | batter / DH | worse | predicted_H -1.21 |
| ARI | Corbin Carroll | batter / RF | boosted | predicted_SO 1.043 |
| 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 | 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 | ARI model-prediction batting totals differ from final simulation box score (2B: current=2, sim=4; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=4, sim=5; SO: current=7, sim=10; HBP: current=0, sim=1). | ARI |
| info | CURRENT_PLAYER_MATCH_BOX | ARI current finalized hitter lines are model predictions and differ from the simulation box score: Geraldo Perdomo: HR current=0 box=1, RBI current=0 box=1; Ketel Marte: 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=0 box=1; Lars Nootbaar: AB current=4 box=5, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Gabriel Moreno: H current=1 box=2, 2B current=0 box=2, HR current=1 box=0, RBI current=1 box=0; Max Kepler: H current=1 box=2, 2B current=0 box=1, RBI current=0 box=2, R current=0 box=1; Tim Tawa: H current=0 box=1, RBI current=0 box=1, R current=0 box=1, BB current=0 box=1; Corbin Carroll: AB current=5 box=4, 2B current=0 box=1, SO current=1 box=2; Nolan Arenado: AB current=4 box=3, H current=1 box=0, BB current=0 box=1, SO current=1 box=0 | ARI |
| info | CURRENT_FINALIZED_MATCH_BOX | HOU model-prediction batting totals differ from final simulation box score (AB: current=35, sim=32; H: current=8, sim=5; HR: current=1, sim=2; BB: current=3, sim=2; SO: current=8, sim=11; HBP: current=0, 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: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Isaac Paredes: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Jeremy Peña: AB current=5 box=4, HR current=0 box=1, RBI current=0 box=3, SO current=1 box=2; Jose Altuve: 2B current=0 box=1, BB current=1 box=0; Taylor Trammell: AB current=3 box=1, H current=1 box=0, BB current=0 box=1, HBP current=0 box=2; Christian Walker: HR current=0 box=1, R current=0 box=1, SO current=1 box=2; Daulton Varsho: H current=1 box=0, SO current=1 box=3; Cam Smith: AB current=3 box=4 | HOU |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| ATL | Martín Pérez | 2 ER / 17 outs | 4 ER / 11 outs | 2 |
| PHI | Zack Wheeler | 3 ER / 16 outs | 1 ER / 18 outs | -2 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Martín Pérez (ATL) posted 9.82 ERA vs projected 3.18 (4 ER in 11 outs); he is materially worse pitching away (4.32 ERA there vs 2.19 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
Martín Pérez (ATL) threw 11 outs, 4 ER = 9.82 ERA against a projected 3.18 ERA (6.64 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 4 runs on 9 hits and 1 HR, against a projected 4 runs / 8 hits (0 runs vs projection).
Who did the damage to him:
Verdict: both: the starter was hit hard AND the lineup underproduced
HOME pitching
Zack Wheeler (PHI) threw 18 outs, 1 ER = 1.5 ERA against a projected 5.06 ERA (-3.56 ERA error)
Bullpen behind him: 1 ER over 6 outs.
The AWAY lineup he faced produced 2 runs on 5 hits and 2 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
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)
| Team | Pitcher | Outs | ERA | ER | H | HR | BB | SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|
| ATL | Martín Pérez (Starter) | 11 / 17 | 9.82 / 3.18 (+6.64) | 4 / 2 | 7 / 4 | 1 / 1 | 4 / 3 | 3 / 3 | venue away: 4.32 vs 2.19 ERA (worse here) · opp run factor 1 (average) · 26 prior appearances this season |
| PHI | Zack Wheeler (Starter) | 18 / 16 | 1.5 / 5.06 (-3.56) | 1 / 3 | 3 / 5 | 1 / 0 | 2 / 4 | 9 / 3 | venue home: 3.23 vs 3.38 ERA (ok) · opp run factor 1 (strong) · 23 prior appearances this season |
| PHI | Jhoan Duran (Closer) | 3 / 3 | 0 / 9 (-9.00) | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | |
| PHI | Jonathan Bowlan (Setup Man) | 3 / 5 | 9 / 0 (+9.00) | 1 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 1 / 0 |
Hitters: actual / projected (sorted by run impact vs projection)
| Team | Batter | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| PHI | Derek Hill (CF) | 4 / 3 | 2 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 1.56 | 0.282 weak | good day |
| ATL | Austin Riley (3B) | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 0 | 0 / 0 | 2 / 1 | 0.93 | 0.298 below average | good day |
| PHI | Kyle Schwarber (DH) | 3 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 2 / 1 | 2 / 1 | 2 / 1 | 0 / 1 | 0.8 | 0.365 elite | projection too low |
| ATL | Matt Olson (1B) | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 2 / 1 | -0.78 | 0.355 elite | bad day |
| ATL | Mauricio Dubón (LF) | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | -0.47 | 0.302 below average | — |
| ATL | Ozzie Albies (2B) | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.284 below average | — |
| ATL | Michael Harris II (CF) | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 2 / 1 | -0.47 | 0.341 elite | — |
| PHI | Alec Bohm (1B) | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 1 / 1 | -0.47 | 0.323 above average | — |
| PHI | Edmundo Sosa (LF) | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.333 above average | — |
| PHI | Bryson Stott (3B) | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | -0.47 | 0.327 above average | — |
| PHI | Trea Turner (SS) | 4 / 5 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 0 | 0 / 1 | 0.33 | 0.294 below average | — |
| PHI | Bryce Harper (RF) | 4 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -0.17 | 0.393 elite | — |
| PHI | Luis Arraez (2B) | 4 / 5 | 2 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.16 | 0.307 average | — |
| ATL | Ronald Acuña Jr. (RF) | 4 / 5 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | 0.14 | 0.362 elite | — |
| ATL | Drake Baldwin (C) | 4 / 5 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | 0.14 | 0.367 elite | — |
| ATL | Dominic Smith (DH) | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | -0.14 | 0.299 below average | — |
| PHI | J.T. Realmuto (C) | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 1 / 0 | 2 / 1 | -0.14 | 0.323 above average | — |
| ATL | Ha-Seong Kim (SS) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 | 0.216 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.545 | positive favors home; negative favors away |
| Recent form | -0.51 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.002 | positive favors home; negative favors away |
| Composite | -0.603 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.11-5.4 | 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.538 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run) |
| embedded_savant_run_environment | 5-4 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-4 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-4 | n/a | Capped at max 12 realistic runs |
| simulation_result | 5-4 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.11-5.4 | 4-5 | 0.287 | 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 projected_margin_is_one_run) |
| embedded_savant_run_environment | 5-4 | 5-4 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-4 | 5-4 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-4 | 5-4 | -0 | Capped at max 12 realistic runs |
| simulation_result | 5-4 | 5-4 | -0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| ATL | Drake Baldwin | batter / C | worse | predicted_AB -2.34 |
| PHI | J.T. Realmuto | batter / C | better | predicted_H 2.17 |
| PHI | Edmundo Sosa | batter / LF | worse | predicted_AB 2.071 |
| ATL | Dominic Smith | batter / DH | worse | predicted_RBI 1.7 |
| PHI | Trea Turner | batter / SS | worse | predicted_RBI 1.57 |
| PHI | Kyle Schwarber | batter / DH | worse | predicted_SO -1.496 |
| ATL | Michael Harris II | batter / CF | better | predicted_H 1.41 |
| ATL | Mauricio Dubón | batter / LF | worse | predicted_AB -1.36 |
| 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 | 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 | ATL model-prediction batting totals differ from final simulation box score (AB: current=36, sim=34; H: current=8, sim=7; 3B: current=0, sim=1; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=4; SO: current=8, sim=3). | ATL |
| info | CURRENT_PLAYER_MATCH_BOX | ATL current finalized hitter lines are model predictions and differ from the simulation box score: Matt Olson: AB current=4 box=3, H current=1 box=2, 2B current=1 box=0, HR current=0 box=1; Mauricio Dubón: AB current=4 box=3, H current=1 box=0, BB current=0 box=1; Ozzie Albies: H current=1 box=0, SO current=1 box=0; Ronald Acuña Jr.: 3B current=0 box=1, HR current=1 box=0, BB current=1 box=0; Drake Baldwin: AB current=5 box=3, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Dominic Smith: AB current=3 box=4, RBI current=0 box=2, R current=0 box=1; Austin Riley: H current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Michael Harris II: H current=1 box=2, 2B current=0 box=1, SO current=1 box=0 | ATL |
| info | CURRENT_FINALIZED_MATCH_BOX | PHI model-prediction batting totals differ from final simulation box score (AB: current=35, sim=38; H: current=8, sim=11; 2B: current=2, sim=1; BB: current=3, sim=4; SO: current=8, sim=3). | PHI |
| info | CURRENT_PLAYER_MATCH_BOX | PHI current finalized hitter lines are model predictions and differ from the simulation box score: Bryce Harper: 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=1 box=0; Alec Bohm: AB current=4 box=5, H current=1 box=2, RBI current=1 box=0, R current=0 box=1; Kyle Schwarber: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Edmundo Sosa: AB current=3 box=5, RBI current=1 box=0, SO current=1 box=2; Bryson Stott: AB current=3 box=4; Luis Arraez: AB current=5 box=4, 2B current=1 box=0, BB current=0 box=1, SO current=1 box=0; Trea Turner: H current=1 box=2, HR current=0 box=1, RBI current=0 box=2; J.T. Realmuto: H current=1 box=3, 2B current=0 box=1, RBI current=0 box=1, SO current=1 box=0 | PHI |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| BOS | Sonny Gray | 3 ER / 18 outs | 0 ER / 21 outs | -3 |
| BAL | Chris Bassitt | 3 ER / 15 outs | 3 ER / 17 outs | 0 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Sonny Gray (BOS) posted 0.00 ERA vs projected 4.50 (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
Sonny Gray (BOS) threw 21 outs, 0 ER = 0 ERA against a projected 4.5 ERA (-4.5 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 0 runs on 5 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
Chris Bassitt (BAL) threw 17 outs, 3 ER = 4.76 ERA against a projected 5.4 ERA (-0.64 ERA error)
Bullpen behind him: 0 ER over 1 outs.
The AWAY lineup he faced produced 5 runs on 9 hits and 0 HR, against a projected 4 runs / 8 hits (1 runs vs projection).
Who did the damage to him:
Verdict: offense: the lineup scored well below its projection
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)
| Team | Pitcher | Outs | ERA | ER | H | HR | BB | SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|
| BOS | Sonny Gray (Starter) | 21 / 18 | 0 / 4.5 (-4.50) | 0 / 3 | 3 / 4 | 0 / 1 | 3 / 2 | 7 / 6 | venue away: 2.87 vs 2.77 ERA (ok) · opp run factor 0.97 (average) · 25 prior appearances this season |
| BAL | Chris Bassitt (Starter) | 17 / 15 | 4.76 / 5.4 | 3 / 3 | 5 / 6 | 0 / 1 | 4 / 3 | 6 / 5 | venue home: 3.29 vs 6.43 ERA (ok) · opp run factor 0.96 (average) · 16 prior appearances this season |
| BAL | Rico Garcia (Setup Man) | 1 / 4 | 0 / 6.75 (-6.75) | 0 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 |
Hitters: actual / projected (sorted by run impact vs projection)
| Team | Batter | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| BAL | Pete Alonso (1B) | 3 / 5 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 1 | -1.4 | 0.392 elite | bad day |
| BOS | Isiah Kiner-Falefa (2B) | 3 / 3 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1.11 | 0.307 average | no signal |
| BOS | Roman Anthony (DH) | 5 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 3 / 1 | -0.8 | 0.361 elite | bad day |
| BOS | Mickey Gasper (1B) | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 2 / 0 | 0 / 1 | -0.74 | 0.372 elite | bad day |
| BOS | Wilyer Abreu (RF) | 5 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | -0.64 | 0.347 elite | bad day |
| BAL | Gunnar Henderson (SS) | 2 / 5 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 2 / 1 | 1 / 1 | 0.64 | 0.316 average | no signal |
| BAL | Dylan Beavers (LF) | 4 / 3 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | -0.64 | 0.304 below average | projection too high |
| BAL | Colton Cowser (CF) | 1 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0.64 | 0.321 above average | projection too low |
| BOS | Trevor Story (SS) | 5 / 5 | 3 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 2 / 0 | 0 / 0 | 2 / 1 | 0.63 | 0.251 weak | good day |
| BOS | Nick Sogard (3B) | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | 0.47 | 0.327 above average | — |
| BAL | Jackson Holliday (DH) | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 3 / 1 | -0.47 | 0.303 below average | — |
| BAL | Blaze Alexander (2B) | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -0.47 | 0.356 elite | — |
| BAL | Heston Kjerstad (RF) | 4 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0.221 weak | — |
| BAL | Christian Encarnacion-Strand (3B) | 4 / 5 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 2 / 1 | 0.31 | 0.343 elite | — |
| BOS | Jarren Duran (LF) | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 1 / 0 | 2 / 1 | -0.14 | 0.296 below average | — |
| BOS | Eli White (CF) | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.271 weak | — |
| BOS | Connor Wong (C) | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.286 below average | — |
| BAL | Samuel Basallo (C) | 4 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.322 above average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.355 | positive favors home; negative favors away |
| Recent form | 0.254 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.005 | positive favors home; negative favors away |
| Composite | -0.3 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.57-3.38 | n/a | Base ML historical model prediction |
| variance_applied | 5-3 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 0.532 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-4 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-4 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-4 | n/a | Capped at max 12 realistic runs |
| simulation_result | 5-4 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.57-3.38 | 5-3 | 0.813 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-3 | 5-4 | -1 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-4 | 5-4 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-4 | 5-4 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-4 | 5-4 | -0 | Capped at max 12 realistic runs |
| simulation_result | 5-4 | 5-4 | -0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| BAL | Jackson Holliday | batter / DH | better | predicted_RBI 2.671 |
| BOS | Wilyer Abreu | batter / RF | better | predicted_RBI 2.67 |
| BOS | Trevor Story | batter / SS | worse | predicted_AB -2.63 |
| BOS | Sonny Gray | pitcher / Starter | better | predicted_SO 2 |
| BAL | Chris Bassitt | pitcher / Starter | worse | predicted_H 2 |
| BAL | Colton Cowser | batter / CF | worse | predicted_H 1.71 |
| BOS | Isiah Kiner-Falefa | batter / 2B | worse | predicted_SO 1.581 |
| BOS | Eli White | batter / CF | better | predicted_AB 1.5 |
| 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 | 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_FINALIZED_MATCH_BOX | BAL model-prediction batting totals differ from final simulation box score (H: current=7, sim=6; BB: current=3, sim=2; SO: current=9, sim=6). | BAL |
| info | CURRENT_PLAYER_MATCH_BOX | BAL current finalized hitter lines are model predictions and differ from the simulation box score: Jackson Holliday: AB current=3 box=4, RBI current=0 box=3, SO current=1 box=0; Blaze Alexander: AB current=3 box=4, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Heston Kjerstad: AB current=3 box=4, SO current=1 box=0; Samuel Basallo: AB current=3 box=4; Christian Encarnacion-Strand: AB current=5 box=4, H current=1 box=0, RBI current=1 box=0, SO current=1 box=2; Gunnar Henderson: AB current=5 box=3, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Pete Alonso: AB current=5 box=4, H current=1 box=2, BB current=1 box=0; Dylan Beavers: R current=0 box=1 | BAL |
| info | CURRENT_FINALIZED_MATCH_BOX | BOS model-prediction batting totals differ from final simulation box score (AB: current=33, sim=35; 2B: current=2, sim=1; 3B: current=0, sim=1; RBI: current=4, sim=5; R: current=4, sim=5). | BOS |
| info | CURRENT_PLAYER_MATCH_BOX | BOS current finalized hitter lines are model predictions and differ from the simulation box score: Mickey Gasper: AB current=3 box=4, HR current=1 box=0, RBI current=1 box=0, BB current=0 box=1; Roman Anthony: AB current=4 box=5, H current=1 box=0, R current=1 box=0, BB current=1 box=0; Nick Sogard: BB current=1 box=0; Wilyer Abreu: H current=1 box=2, 2B current=1 box=0, 3B current=0 box=1, HR current=0 box=1; Eli White: AB current=3 box=4, 2B current=0 box=1, R current=0 box=1; Jarren Duran: RBI current=1 box=0, SO current=1 box=0; Isiah Kiner-Falefa: AB current=3 box=4, SO current=0 box=2; Trevor Story: AB current=5 box=2, 2B current=1 box=0, R current=0 box=1, BB current=0 box=2 | BOS |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
No large single-factor errors.
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| CHC | Javier Assad | 2 ER / 15 outs | 3 ER / 14 outs | 1 |
| MIA | Ryan Gusto | 6 ER / 13 outs | 5 ER / 14 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
Javier Assad (CHC) threw 14 outs, 3 ER = 5.79 ERA against a projected 3.6 ERA (2.19 ERA error)
Bullpen behind him: 1 ER over 7 outs.
The HOME lineup he faced produced 5 runs on 5 hits and 2 HR, against a projected 4 runs / 7 hits (1 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Ryan Gusto (MIA) threw 14 outs, 5 ER = 9.64 ERA against a projected 12.46 ERA (-2.82 ERA error)
Bullpen behind him: 1 ER over 7 outs.
The AWAY lineup he faced produced 6 runs on 13 hits and 1 HR, against a projected 5 runs / 9 hits (1 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material)
| Team | Pitcher | Outs | ERA | ER | H | HR | BB | SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|
| CHC | Javier Assad (Starter) | 14 / 15 | 5.79 / 3.6 | 3 / 2 | 3 / 3 | 0 / 0 | 5 / 2 | 3 / 4 | venue away: 4.45 vs 1.66 ERA (worse here) · opp run factor 1.02 (average) · 22 prior appearances this season |
| CHC | Trent Thornton (Middle Reliever (High Leverage)) | 2 / 3 | 13.5 / 9 (+4.50) | 1 / 1 | 1 / 1 | 1 / 1 | 0 / 0 | 0 / 1 | |
| CHC | Ryan Zeferjahn (Middle Reliever (High Leverage)) | 5 / 2 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | |
| MIA | Ryan Gusto (Starter) | 14 / 13 | 9.64 / 12.46 | 5 / 6 | 10 / 5 | 1 / 2 | 2 / 1 | 5 / 6 | venue home: 3.62 vs 4.15 ERA (ok) · opp run factor 0.94 (strong) · 19 prior appearances this season |
| MIA | Calvin Faucher (Closer) | 2 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | |
| MIA | Tyler Zuber (Setup Man) | 3 / 4 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 2 / 1 | |
| MIA | Victor Vodnik (Middle Reliever (High Leverage)) | 2 / 3 | 13.5 / 0 (+13.50) | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 |
Hitters: actual / projected (sorted by run impact vs projection)
| Team | Batter | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| MIA | Griffin Conine (1B) | 2 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 2 / 0 | 3 / 0 | 0 / 1 | 1.92 | 0.373 elite | projection too low |
| MIA | Heriberto Hernández (LF) | 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 |
| CHC | Michael Conforto (DH) | 3 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 2 / 0 | 0 / 0 | 1 / 1 | 1.4 | 0.333 above average | projection too low |
| MIA | Kyle Stowers (DH) | 4 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 1 / 1 | 1 / 2 | 1.09 | 0.335 above average | projection too low |
| CHC | Alex Bregman (3B) | 3 / 5 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 0 | 1 / 1 | -1.07 | 0.318 average | no signal |
| CHC | Nico Hoerner (SS) | 5 / 4 | 3 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0.94 | 0.324 above average | projection too low |
| CHC | Pete Crow-Armstrong (CF) | 4 / 5 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | 2 / 1 | -0.93 | 0.369 elite | bad day |
| CHC | Miguel Amaya (C) | 3 / 3 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 0 | 0 / 1 | 0.78 | 0.289 below average | good day |
| MIA | Otto Lopez (SS) | 3 / 5 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 0 | 0 / 1 | 0.64 | 0.324 above average | projection too low |
| CHC | Ian Happ (LF) | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 0.47 | 0.313 average | — |
| CHC | Pedro Ramirez (2B) | 5 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -0.47 | 0.293 below average | — |
| MIA | Jakob Marsee (CF) | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | -0.47 | 0.305 average | — |
| MIA | Joe Mack (C) | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.289 below average | — |
| MIA | Graham Pauley (3B) | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 1 | 0.33 | 0.225 weak | — |
| MIA | Javier Sanoja (2B) | 4 / 3 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | -0.31 | 0.287 below average | — |
| CHC | Michael Busch (1B) | 5 / 4 | 2 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 1 | 1 / 1 | 0.14 | 0.328 above average | — |
| CHC | Seiya Suzuki (RF) | 3 / 5 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 2 / 1 | 1 / 1 | 0.02 | 0.339 above average | — |
| MIA | Owen Caissie (RF) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.297 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.799 | positive favors home; negative favors away |
| Recent form | -0.77 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.086 | positive favors home; negative favors away |
| Composite | -0.984 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.67-4.91 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 6-3 | 0.74 | Enhanced ML with recent form, H2H, low-score analysis |
| embedded_savant_run_environment | 6-3 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-3 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-3 | n/a | Capped at max 12 realistic runs |
| simulation_result | 6-3 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 3.67-4.91 | 4-5 | 0.233 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 6-3 | 4 | Enhanced ML with recent form, H2H, low-score analysis |
| embedded_savant_run_environment | 6-3 | 6-3 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-3 | 6-3 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-3 | 6-3 | -0 | Capped at max 12 realistic runs |
| simulation_result | 6-3 | 6-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 |
|---|---|---|---|---|
| CHC | Ian Happ | batter / LF | better | predicted_RBI 2.52 |
| CHC | Seiya Suzuki | batter / RF | worse | predicted_AB -2.04 |
| CHC | Pete Crow-Armstrong | batter / CF | worse | predicted_AB -1.86 |
| MIA | Joe Mack | batter / C | worse | predicted_RBI 1.81 |
| CHC | Michael Busch | batter / 1B | better | predicted_RBI 1.54 |
| CHC | Michael Conforto | batter / DH | worse | predicted_AB 1.5 |
| MIA | Owen Caissie | batter / RF | worse | predicted_SO -1.173 |
| MIA | Jakob Marsee | batter / CF | worse | predicted_SO 1.136 |
| 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 | MIA pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | MIA |
| info | CURRENT_FINALIZED_MATCH_BOX | CHC model-prediction batting totals differ from final simulation box score (AB: current=36, sim=32; H: current=9, sim=5; 2B: current=2, sim=1; RBI: current=5, sim=6; R: current=5, sim=6; BB: current=4, sim=2; SO: current=8, sim=7; HBP: current=0, sim=1). | 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=5 box=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Pete Crow-Armstrong: AB current=5 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Nico Hoerner: H current=1 box=0; Michael Busch: 2B current=1 box=0, HR current=0 box=1, RBI current=0 box=2, R current=0 box=1; Alex Bregman: AB current=5 box=4, HR current=1 box=0, RBI current=1 box=0; Ian Happ: HR current=0 box=1, RBI current=0 box=3, BB current=1 box=0, SO current=1 box=0; Pedro Ramirez: AB current=3 box=4, 2B current=0 box=1, RBI current=1 box=0, SO current=1 box=0; Michael Conforto: AB current=3 box=4, R current=0 box=1, SO current=1 box=0 | CHC |
| info | CURRENT_FINALIZED_MATCH_BOX | MIA model-prediction batting totals differ from final simulation box score (AB: current=31, sim=32; H: current=7, sim=5; RBI: current=4, sim=3; R: current=4, sim=3; BB: current=3, sim=2; SO: current=9, sim=7). | 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, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Griffin Conine: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=1, R current=0 box=1; Owen Caissie: H current=0 box=1, 2B current=0 box=1, BB current=0 box=1, SO current=1 box=0; Heriberto Hernández: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Jakob Marsee: SO current=1 box=2; Javier Sanoja: H current=1 box=0, 2B current=1 box=0, SO current=0 box=1; Otto Lopez: AB current=5 box=4, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Joe Mack: AB current=3 box=4, RBI current=0 box=2, R current=0 box=1 | MIA |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| DET | Framber Valdez | 2 ER / 16 outs | 0 ER / 21 outs | -2 |
| CLE | Parker Messick | 3 ER / 18 outs | 3 ER / 18 outs | 0 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Framber Valdez (DET) posted 0.00 ERA vs projected 3.38 (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
Framber Valdez (DET) threw 21 outs, 0 ER = 0 ERA against a projected 3.38 ERA (-3.38 ERA error)
Bullpen behind him: 0 ER over 3 outs.
The HOME lineup he faced produced 0 runs on 3 hits and 0 HR, against a projected 4 runs / 8 hits (-4 runs vs projection).
No individual hitter beat his projection by a meaningful margin.
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Parker Messick (CLE) threw 18 outs, 3 ER = 4.5 ERA against a projected 4.5 ERA (0 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The AWAY lineup he faced produced 6 runs on 11 hits and 2 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)
| Team | Pitcher | Outs | ERA | ER | H | HR | BB | SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|
| DET | Framber Valdez (Starter) | 21 / 16 | 0 / 3.38 (-3.38) | 0 / 2 | 3 / 4 | 0 / 0 | 1 / 2 | 3 / 4 | venue away: 4.38 vs 4.33 ERA (ok) · opp run factor 0.93 (weak) · 27 prior appearances this season |
| DET | Kyle Finnegan (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 3 | 0 / 0 | 0 / 1 | 0 / 1 | |
| CLE | Parker Messick (Starter) | 18 / 18 | 4.5 / 4.5 | 3 / 3 | 7 / 5 | 2 / 0 | 2 / 2 | 12 / 6 | venue home: 2.72 vs 2.25 ERA (ok) · opp run factor 0.98 (average) · 27 prior appearances this season |
Hitters: actual / projected (sorted by run impact vs projection)
| Team | Batter | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| DET | Riley Greene (LF) | 5 / 4 | 4 / 1 | 1 / 1 | 0 / 0 | 2 / 0 | 4 / 1 | 3 / 1 | 0 / 1 | 1 / 1 | 2.94 | 0.367 elite | projection too low |
| DET | Spencer Torkelson (1B) | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 0 / 1 | 2 / 1 | -1.73 | 0.31 average | no signal |
| DET | John Peck (SS) | 3 / 4 | 2 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 0 / 1 | 1.27 | 0.379 elite | projection too low |
| DET | Ben Malgeri (RF) | 5 / 3 | 3 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 2 / 1 | 1.25 | 0.328 above average | projection too low |
| CLE | José Ramírez (3B) | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 0 | -1.11 | 0.335 above average | bad day |
| CLE | Angel Martínez (RF) | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -0.93 | 0.304 below average | projection too high |
| CLE | Steven Kwan (LF) | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | -0.8 | 0.321 above average | bad day |
| DET | Javier Báez (2B) | 4 / 3 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 2 / 1 | -0.78 | 0.258 weak | projection too high |
| DET | Dillon Dingler (C) | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0 / 0 | 2 / 1 | -0.47 | 0.344 elite | — |
| CLE | Jo Adell (DH) | 2 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 2 / 1 | -0.47 | 0.325 above average | — |
| CLE | Brayan Rocchio (SS) | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.292 below average | — |
| CLE | David Fry (1B) | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | -0.33 | 0.26 weak | — |
| DET | Hao-Yu Lee (3B) | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 2 / 0 | 3 / 1 | 0.19 | 0.301 below average | — |
| DET | Gleyber Torres (DH) | 5 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 / 1 | 2 / 1 | 0.14 | 0.327 above average | — |
| CLE | Austin Hedges (C) | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | -0.14 | 0.275 weak | — |
| DET | Zach McKinstry (CF) | 4 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 | 0.282 weak | — |
| CLE | Angel Genao (2B) | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 0 | 0.297 below average | — |
| CLE | Petey Halpin (CF) | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.286 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.026 | positive favors home; negative favors away |
| Recent form | 0.706 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.05 | positive favors home; negative favors away |
| Composite | 0.262 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.89-5.45 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 3-4 | 0.554 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 3-4 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 3-4 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 3-4 | n/a | Capped at max 12 realistic runs |
| simulation_result | 3-4 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 3.89-5.45 | 4-5 | -0.565 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 3-4 | 0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 3-4 | 3-4 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 3-4 | 3-4 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 3-4 | 3-4 | 0 | Capped at max 12 realistic runs |
| simulation_result | 3-4 | 3-4 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| CLE | Petey Halpin | batter / CF | worse | predicted_SO 2.426 |
| CLE | Angel Martínez | batter / RF | better | predicted_H 2.121 |
| CLE | Jo Adell | batter / DH | better | predicted_H 2.094 |
| CLE | Parker Messick | pitcher / Starter | better | predicted_SO 2 |
| CLE | Cade Smith | pitcher / Closer | worse | predicted_SO -2 |
| DET | Javier Báez | batter / 2B | worse | predicted_BB 1.898 |
| DET | Hao-Yu Lee | batter / 3B | worse | predicted_2B 1.856 |
| DET | Zach McKinstry | batter / CF | worse | predicted_SO 1.431 |
| 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 | 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 | CLE model-prediction batting totals differ from final simulation box score (AB: current=33, sim=37; H: current=8, sim=11; SO: current=7, sim=6). | CLE |
| info | CURRENT_PLAYER_MATCH_BOX | CLE current finalized hitter lines are model predictions and differ from the simulation box score: Angel Martínez: AB current=4 box=5, H current=1 box=3, HR current=1 box=0, RBI current=1 box=0; David Fry: H current=1 box=0, SO current=1 box=0; Jo Adell: AB current=4 box=5, H current=1 box=3, 2B current=0 box=1, RBI current=1 box=2; Angel Genao: H current=1 box=0, R current=1 box=0, SO current=1 box=0; Austin Hedges: AB current=3 box=4, H current=1 box=0, SO current=1 box=2; Steven Kwan: R current=1 box=0; José Ramírez: H current=1 box=2, 2B current=1 box=0; Petey Halpin: AB current=3 box=4, H current=0 box=1, HR current=0 box=1, RBI current=0 box=1 | CLE |
| info | CURRENT_FINALIZED_MATCH_BOX | DET model-prediction batting totals differ from final simulation box score (AB: current=31, sim=33; H: current=7, sim=6; 2B: current=2, sim=5; HR: current=1, sim=0; RBI: current=4, sim=3; R: current=5, sim=3; BB: current=3, sim=4; SO: current=9, sim=7). | DET |
| info | CURRENT_PLAYER_MATCH_BOX | DET current finalized hitter lines are model predictions and differ from the simulation box score: Gleyber Torres: AB current=4 box=5, 2B current=0 box=1, RBI current=0 box=1, BB current=1 box=0; Hao-Yu Lee: AB current=3 box=4, H current=1 box=2, 2B current=0 box=2, RBI current=1 box=2; Ben Malgeri: RBI current=1 box=0, R current=0 box=1, BB current=0 box=1, SO current=1 box=0; Dillon Dingler: H current=1 box=0, R current=1 box=0, SO current=1 box=0; Zach McKinstry: AB current=3 box=4, H current=0 box=1, 2B current=0 box=1, SO current=1 box=2; Javier Báez: AB current=3 box=2, H current=1 box=0, 2B current=1 box=0, R current=1 box=0; Riley Greene: RBI current=1 box=0, R current=1 box=0, BB current=1 box=0, SO current=1 box=0; John Peck: AB current=4 box=3, RBI current=1 box=0, BB current=0 box=1, SO current=1 box=2 | DET |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| LAA | Yusei Kikuchi | 6 ER / 14 outs | 0 ER / 18 outs | -6 |
| PIT | Braxton Ashcraft | 3 ER / 19 outs | 3 ER / 15 outs | 0 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Yusei Kikuchi (LAA) posted 0.00 ERA vs projected 11.57 (0 ER in 18 outs); he is materially worse pitching away (7.56 ERA there vs 3.00 on the other side), a venue-role weakness the model under-weighted.
What to do: Enable/raise the venue-split weight (context.venue_adjustment_weight) and validate in shadow; the split is credible for this starter.
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Yusei Kikuchi (LAA) threw 18 outs, 0 ER = 0 ERA against a projected 11.57 ERA (-11.57 ERA error) only 9 prior appearances in the covered season - the projection had little of his own record to stand on
Bullpen behind him: 1 ER over 6 outs.
The HOME lineup he faced produced 1 runs on 8 hits and 1 HR, against a projected 6 runs / 9 hits (-5 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Braxton Ashcraft (PIT) threw 15 outs, 3 ER = 5.4 ERA against a projected 4.26 ERA (1.14 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The AWAY lineup he faced produced 6 runs on 12 hits and 1 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)
| Team | Pitcher | Outs | ERA | ER | H | HR | BB | SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|
| LAA | Yusei Kikuchi (Starter) | 18 / 14 | 0 / 11.57 (-11.57) | 0 / 6 | 5 / 6 | 0 / 3 | 3 / 2 | 6 / 5 | venue away: 7.56 vs 3 ERA (worse here) · opp run factor 1.07 (strong) · 9 prior appearances this season |
| LAA | José Fermin (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | |
| LAA | Luke Murphy (Middle Reliever) | 3 / 1 | 9 / 0 (+9.00) | 1 / 0 | 2 / 0 | 1 / 0 | 0 / 0 | 2 / 1 | |
| PIT | Braxton Ashcraft (Starter) | 15 / 19 | 5.4 / 4.26 | 3 / 3 | 7 / 5 | 1 / 0 | 0 / 0 | 9 / 7 | venue home: 3.59 vs 3.7 ERA (ok) · opp run factor 0.92 (weak) · 27 prior appearances this season |
Hitters: actual / projected (sorted by run impact vs projection)
| Team | Batter | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| PIT | Bryan Reynolds (LF) | 3 / 4 | 3 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | 1.56 | 0.36 elite | projection too low |
| LAA | Josh Lowe (RF) | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 2 / 1 | 0.93 | 0.29 below average | good day |
| LAA | Adam Frazier (2B) | 3 / 3 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0.78 | 0.258 weak | good day |
| LAA | Wade Meckler (LF) | 5 / 3 | 2 / 1 | 2 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 1 / 1 | 0 / 1 | 0 / 1 | 0.76 | 0.312 average | no signal |
| LAA | Christian Moore (DH) | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | -0.47 | 0.238 weak | — |
| LAA | Denzer Guzman (3B) | 4 / 4 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 2 / 1 | 0.47 | 0.266 weak | — |
| PIT | Esmerlyn Valdez (RF) | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 2 / 1 | -0.47 | 0.331 above average | — |
| PIT | Konnor Griffin (SS) | 4 / 5 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 3 / 1 | -0.47 | 0.298 below average | — |
| PIT | Jake Mangum (CF) | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | -0.47 | 0.283 weak | — |
| PIT | Oneil Cruz (DH) | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | -0.33 | 0.352 elite | — |
| LAA | Zach Neto (SS) | 5 / 5 | 3 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 0 / 1 | 2 / 1 | -0.32 | 0.305 average | — |
| LAA | Vaughn Grissom (1B) | 5 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 3 / 1 | -0.31 | 0.316 average | — |
| PIT | Nick Gonzales (2B) | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0.31 | 0.327 above average | — |
| PIT | Rafael Flores Jr. (C) | 4 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -0.15 | 0.339 above average | — |
| LAA | Mike Trout (CF) | 4 / 5 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | 2 / 1 | 0.14 | 0.376 elite | — |
| PIT | Nick Yorke (1B) | 1 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | -0.14 | 0.289 below average | — |
| LAA | Moisés Ballesteros (C) | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.291 below average | — |
| PIT | Jared Triolo (3B) | 2 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.289 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.909 | positive favors home; negative favors away |
| Recent form | 1.162 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.153 | positive favors home; negative favors away |
| Composite | 1.488 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.5-6.1 | n/a | Base ML historical model prediction |
| variance_applied | 4-6 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-6 | 0.636 | Enhanced ML with recent form, H2H, low-score analysis |
| 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.5-6.1 | 4-6 | 0.395 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-6 | 4-6 | 0 | Enhanced ML with recent form, H2H, low-score analysis |
| 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 |
|---|---|---|---|---|
| LAA | Yusei Kikuchi | pitcher / Starter | worse | predicted_SO 3 |
| LAA | Denzer Guzman | batter / 3B | worse | predicted_2B 1.864 |
| PIT | Oneil Cruz | batter / DH | better | predicted_SO -1.538 |
| PIT | Bryan Reynolds | batter / LF | worse | predicted_AB -1.45 |
| PIT | Rafael Flores Jr. | batter / C | better | predicted_RBI 1.41 |
| LAA | Zach Neto | batter / SS | worse | predicted_SO -1.382 |
| LAA | Wade Meckler | batter / LF | worse | predicted_SO 1.264 |
| LAA | Adam Frazier | batter / 2B | worse | predicted_SO 1.181 |
| 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 | 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 | LAA model pitcher projections differ from final simulation pitching box score (H: current=6, sim=7). | LAA |
| info | CURRENT_FINALIZED_MATCH_BOX | LAA model-prediction batting totals differ from final simulation box score (AB: current=34, sim=33; H: current=7, sim=6; 2B: current=1, sim=2; 3B: current=0, sim=1; HR: current=1, sim=0; RBI: current=3, sim=4; R: current=3, sim=4; BB: current=3, sim=0). | LAA |
| info | CURRENT_PLAYER_MATCH_BOX | LAA current finalized hitter lines are model predictions and differ from the simulation box score: Wade Meckler: RBI current=0 box=1, BB current=1 box=0, SO current=1 box=2, HBP current=0 box=1; Vaughn Grissom: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Moisés Ballesteros: AB current=3 box=4, R current=0 box=1; Josh Lowe: AB current=3 box=4, H current=1 box=0, SO current=1 box=2; Mike Trout: AB current=5 box=4, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Denzer Guzman: H current=0 box=2, 2B current=0 box=2, RBI current=0 box=2, R current=0 box=1; Zach Neto: AB current=5 box=4, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Adam Frazier: H current=0 box=1, 3B current=0 box=1, RBI current=0 box=1, R current=0 box=1 | LAA |
| info | CURRENT_FINALIZED_MATCH_BOX | PIT model-prediction batting totals differ from final simulation box score (AB: current=34, sim=31; H: current=9, sim=7; 2B: current=1, sim=0; HR: current=1, sim=3; RBI: current=5, sim=6; SO: current=9, sim=8). | PIT |
| info | CURRENT_PLAYER_MATCH_BOX | PIT current finalized hitter lines are model predictions and differ from the simulation box score: Esmerlyn Valdez: AB current=3 box=4, BB current=1 box=0, SO current=1 box=2; Nick Gonzales: H current=1 box=2, RBI current=1 box=0, R current=0 box=1, SO current=1 box=0; Oneil Cruz: AB current=4 box=3, H current=1 box=2, HR current=0 box=1, RBI current=1 box=2; Jared Triolo: AB current=3 box=4, H current=1 box=0; Rafael Flores Jr.: RBI current=1 box=2, SO current=1 box=2; Nick Yorke: AB current=3 box=2, H current=1 box=0, BB current=0 box=1, SO current=1 box=0; Konnor Griffin: AB current=5 box=4, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Jake Mangum: AB current=4 box=3, HR current=0 box=1, RBI current=0 box=1, SO current=1 box=0 | PIT |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| MIL | Dustin May | 3 ER / 15 outs | 2 ER / 11 outs | -1 |
| CIN | Andrew Abbott | 2 ER / 15 outs | 1 ER / 12 outs | -1 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
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
Dustin May (MIL) threw 11 outs, 2 ER = 4.91 ERA against a projected 5.4 ERA (-0.49 ERA error)
Bullpen behind him: 1 ER over 7 outs.
The HOME lineup he faced produced 5 runs on 12 hits and 3 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
Andrew Abbott (CIN) threw 12 outs, 1 ER = 2.25 ERA against a projected 3.6 ERA (-1.35 ERA error)
Bullpen behind him: 1 ER over 9 outs.
The AWAY lineup he faced produced 3 runs on 8 hits and 1 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
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)
| Team | Pitcher | Outs | ERA | ER | H | HR | BB | SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|
| MIL | Dustin May (Starter) | 11 / 15 | 4.91 / 5.4 | 2 / 3 | 5 / 4 | 1 / 1 | 0 / 1 | 5 / 7 | venue away: 5.55 vs 4.16 ERA (worse here) · opp run factor 1.03 (weak) · 26 prior appearances this season |
| MIL | Aaron Ashby (Middle Reliever (High Leverage)) | 3 / 5 | 9 / 0 (+9.00) | 1 / 0 | 3 / 0 | 1 / 0 | 0 / 0 | 2 / 1 | |
| MIL | DL Hall (Reliever) | 4 / 0 | 0 / n/a | 0 / 1 | 2 / 1 | 0 / 0 | 1 / 1 | 3 / 2 | |
| CIN | Andrew Abbott (Starter) | 12 / 15 | 2.25 / 3.6 | 1 / 2 | 3 / 5 | 1 / 0 | 0 / 0 | 5 / 4 | venue home: 4.78 vs 4.23 ERA (worse here) · opp run factor 1.1 (strong) · 28 prior appearances this season |
| CIN | Brock Burke (Middle Reliever (High Leverage)) | 3 / 6 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 4 | |
| CIN | Emilio Pagán (Closer) | 3 / 2 | 0 / 27 (-27.00) | 0 / 2 | 2 / 1 | 0 / 1 | 1 / 1 | 1 / 1 | |
| CIN | Tony Santillan (Middle Reliever (High Leverage)) | 3 / 0 | 9 / n/a | 1 / 4 | 3 / 3 | 0 / 0 | 1 / 1 | 2 / 1 |
Hitters: actual / projected (sorted by run impact vs projection)
| Team | Batter | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| MIL | Jackson Chourio (LF) | 4 / 5 | 1 / 2 | 0 / 1 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -2.04 | 0.334 above average | bad day |
| CIN | Matt McLain (2B) | 3 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 1.4 | 0.307 average | no signal |
| MIL | Gary Sánchez (C) | 3 / 3 | 2 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 1 / 1 | 1.25 | 0.344 elite | projection too low |
| CIN | Sal Stewart (1B) | 3 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 0 | 1 / 1 | 0.8 | 0.351 elite | projection too low |
| CIN | Eugenio Suárez (3B) | 4 / 3 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0.78 | 0.29 below average | good day |
| CIN | Elly De La Cruz (SS) | 4 / 5 | 2 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 1 | 0 / 1 | 2 / 2 | 0.76 | 0.364 elite | projection too low |
| CIN | Tyler Stephenson (DH) | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | 0 / 1 | 2 / 1 | 0.6 | 0.335 above average | projection too low |
| MIL | Joey Ortiz (3B) | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | -0.47 | 0.295 below average | — |
| MIL | David Hamilton (2B) | 3 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0.275 weak | — |
| MIL | Garrett Mitchell (CF) | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 2 / 1 | -0.47 | 0.346 elite | — |
| CIN | Héctor Rodríguez (RF) | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 2 / 1 | -0.46 | 0.275 weak | — |
| MIL | Andrew Vaughn (1B) | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 0 | 0.33 | 0.336 above average | — |
| CIN | JJ Bleday (LF) | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 2 / 1 | -0.33 | 0.349 elite | — |
| MIL | William Contreras (DH) | 5 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | 2 / 1 | 0.29 | 0.333 above average | — |
| MIL | Luis Lara (RF) | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 1 / 0 | 2 / 1 | -0.14 | 0.313 average | — |
| MIL | Cooper Pratt (SS) | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 0 | 0 / 1 | 0 | 0.313 average | — |
| CIN | Jose Trevino (C) | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.222 weak | — |
| CIN | Carlos Jorge (CF) | 4 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 | 0.181 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -1.666 | positive favors home; negative favors away |
| Recent form | -0.83 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.062 | positive favors home; negative favors away |
| Composite | -1.801 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.44-3.8 | n/a | Base ML historical model prediction |
| variance_applied | 4-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 8-5 | 0.54 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 8-5 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 8-5 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 8-5 | n/a | Capped at max 12 realistic runs |
| simulation_result | 8-5 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.44-3.8 | 4-4 | -0.641 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-4 | 8-5 | 3 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 8-5 | 8-5 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 8-5 | 8-5 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 8-5 | 8-5 | -0 | Capped at max 12 realistic runs |
| simulation_result | 8-5 | 8-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 |
|---|---|---|---|---|
| MIL | Andrew Vaughn | batter / 1B | worse | predicted_AB 3.079 |
| MIL | DL Hall | pitcher / Reliever | worse | predicted_IP 2.9 |
| MIL | Luis Lara | batter / RF | better | predicted_AB 2.732 |
| CIN | Carlos Jorge | batter / CF | better | predicted_AB 2.5 |
| MIL | Jackson Chourio | batter / LF | better | predicted_RBI 2.44 |
| MIL | William Contreras | batter / DH | better | predicted_AB 2.132 |
| MIL | David Hamilton | batter / 2B | better | predicted_AB 1.96 |
| MIL | Joey Ortiz | batter / 3B | worse | predicted_AB 1.95 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | CIN pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | CIN |
| info | CURRENT_PITCHER_DUPLICATION | 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 | CIN model-prediction batting totals differ from final simulation box score (AB: current=32, sim=43; 2B: current=1, sim=2; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=2; SO: current=9, sim=13). | CIN |
| info | CURRENT_PLAYER_MATCH_BOX | CIN current finalized hitter lines are model predictions and differ from the simulation box score: Héctor Rodríguez: HR current=1 box=0, RBI current=1 box=2, BB current=0 box=1; Tyler Stephenson: AB current=3 box=5, H current=1 box=0, BB current=1 box=0; Eugenio Suárez: AB current=3 box=5, 2B current=0 box=1, RBI current=1 box=0; Jose Trevino: AB current=3 box=5, RBI current=0 box=1, R current=0 box=1, SO current=1 box=2; Elly De La Cruz: 2B current=1 box=0, BB current=1 box=0, SO current=2 box=1; Sal Stewart: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=0 box=1; JJ Bleday: AB current=4 box=5, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Carlos Jorge: AB current=3 box=5, H current=0 box=1, 2B current=0 box=1, RBI current=0 box=1 | CIN |
| info | CURRENT_FINALIZED_MATCH_BOX | MIL model-prediction batting totals differ from final simulation box score (AB: current=30, sim=46; H: current=9, sim=10; 2B: current=2, sim=5; RBI: current=5, sim=8; R: current=5, sim=8; SO: current=8, sim=11). | MIL |
| info | CURRENT_PLAYER_MATCH_BOX | MIL current finalized hitter lines are model predictions and differ from the simulation box score: Luis Lara: AB current=3 box=6, 2B current=0 box=1, RBI current=0 box=1; William Contreras: AB current=4 box=6, RBI current=1 box=0, BB current=1 box=0, SO current=1 box=2; Joey Ortiz: AB current=3 box=5, H current=1 box=0; Cooper Pratt: AB current=3 box=4, H current=1 box=2, RBI current=1 box=0, BB current=0 box=1; Andrew Vaughn: AB current=3 box=6, RBI current=1 box=0, R current=0 box=1, SO current=0 box=1; David Hamilton: AB current=3 box=5, HR current=0 box=1, RBI current=0 box=2, R current=0 box=1; Jackson Chourio: AB current=5 box=6, HR current=1 box=0, RBI current=1 box=3, BB current=1 box=0; Garrett Mitchell: AB current=3 box=4, 2B current=0 box=1, BB current=0 box=1 | MIL |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
No large single-factor errors.
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| MIN | Taj Bradley | 5 ER / 17 outs | 4 ER / 15 outs | -1 |
| CHW | Anthony Kay | 4 ER / 16 outs | 5 ER / 13 outs | 1 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Taj Bradley (MIN) threw 15 outs, 4 ER = 7.2 ERA against a projected 7.94 ERA (-0.74 ERA error)
Bullpen behind him: 0 ER over 9 outs.
The HOME lineup he faced produced 4 runs on 5 hits and 2 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
HOME pitching
No settled pitching line for this club. The forecast named Anthony Kay (CHW) at a projected 6.75 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 6 runs on 8 hits and 1 HR, against a projected 5 runs / 9 hits (1 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material)
| Team | Pitcher | Outs | ERA | ER | H | HR | BB | SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|
| MIN | Taj Bradley (Starter) | 15 / 17 | 7.2 / 7.94 | 4 / 5 | 4 / 7 | 2 / 1 | 2 / 2 | 6 / 3 | venue away: 4.35 vs 3.3 ERA (worse here) · opp run factor 1.03 (average) · 27 prior appearances this season |
| MIN | A.J. Minter (Middle Reliever (High Leverage)) | 2 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 2 / 1 | |
| MIN | Yoendrys Gómez (Closer) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 1 / 1 | |
| MIN | Jeff Hoffman (Setup Man) | 4 / 4 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 2 / 1 |
Hitters: actual / projected (sorted by run impact vs projection)
| Team | Batter | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| MIN | Gabriel Gonzalez (LF) | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | -0.8 | 0.279 weak | projection too high |
| CHW | Braden Montgomery (RF) | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -0.8 | 0.329 above average | bad day |
| MIN | Kaelen Culpepper (SS) | 5 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 0 / 0 | 0 / 1 | 0.78 | 0.32 average | no signal |
| CHW | Chase Meidroth (2B) | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 2 / 1 | -0.64 | 0.292 below average | projection too high |
| CHW | Munetaka Murakami (1B) | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | 1 / 1 | 0 / 1 | 3 / 2 | 0.6 | 0.35 elite | projection too low |
| MIN | Ryan Kreidler (CF) | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.288 below average | — |
| CHW | Andrew Benintendi (DH) | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.31 average | — |
| MIN | Josh Bell (DH) | 4 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | 0.45 | 0.333 above average | — |
| MIN | Ryan Jeffers (C) | 4 / 5 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 3 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | -0.33 | 0.356 elite | — |
| CHW | Miguel Vargas (3B) | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | -0.33 | 0.386 elite | — |
| MIN | Brooks Lee (3B) | 4 / 5 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 0.31 | 0.274 weak | — |
| CHW | Sam Antonacci (LF) | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 2 / 0 | 0 / 0 | 0.19 | 0.342 elite | — |
| MIN | Luke Keaschall (RF) | 5 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 / 1 | 0 / 0 | -0.17 | 0.315 average | — |
| MIN | Royce Lewis (1B) | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 0 / 1 | -0.14 | 0.316 average | — |
| MIN | Kody Clemens (2B) | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 1 / 0 | 0 / 1 | -0.14 | 0.341 elite | — |
| CHW | Colson Montgomery (SS) | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 1 / 1 | 0 / 0 | 2 / 1 | 0 | 0.307 average | — |
| CHW | Tristan Peters (CF) | 4 / 3 | 1 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.319 average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.462 | positive favors home; negative favors away |
| Recent form | 0.298 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.04 | positive favors home; negative favors away |
| Composite | 0.061 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.68-4.01 | n/a | Base ML historical model prediction |
| variance_applied | 5-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 6-5 | 0.53 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 6-5 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-5 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-5 | n/a | Capped at max 12 realistic runs |
| simulation_result | 6-5 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.68-4.01 | 5-4 | 0.325 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 6-5 | -0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 6-5 | 6-5 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-5 | 6-5 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-5 | 6-5 | -0 | Capped at max 12 realistic runs |
| simulation_result | 6-5 | 6-5 | -0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| MIN | Ryan Jeffers | batter / C | worse | predicted_SO 3.311 |
| CHW | Andrew Benintendi | batter / DH | worse | predicted_H 2.41 |
| MIN | Kaelen Culpepper | batter / SS | better | predicted_2B 1.826 |
| CHW | Tristan Peters | batter / CF | better | predicted_RBI 1.71 |
| CHW | Sam Antonacci | batter / LF | boosted | predicted_AB 1.533 |
| MIN | Luke Keaschall | batter / RF | worse | predicted_AB 1.527 |
| CHW | Colson Montgomery | batter / SS | better | predicted_SO -1.436 |
| MIN | Royce Lewis | batter / 1B | better | predicted_RBI 1.41 |
| 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 | 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 | CHW model pitcher projections differ from final simulation pitching box score (H: current=6, sim=8). | CHW |
| info | CURRENT_FINALIZED_MATCH_BOX | CHW model-prediction batting totals differ from final simulation box score (AB: current=32, sim=35; RBI: current=4, sim=5; SO: current=9, sim=6). | CHW |
| info | CURRENT_PLAYER_MATCH_BOX | CHW current finalized hitter lines are model predictions and differ from the simulation box score: Sam Antonacci: AB current=3 box=5, 2B current=0 box=1, SO current=0 box=2; Munetaka Murakami: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Braden Montgomery: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Andrew Benintendi: AB current=3 box=4, H current=1 box=3, R current=0 box=1, SO current=1 box=0; Miguel Vargas: AB current=4 box=5, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Chase Meidroth: 2B current=1 box=0, RBI current=0 box=1, R current=0 box=1, BB current=1 box=0; Colson Montgomery: AB current=4 box=3, RBI current=1 box=2, BB current=0 box=1, SO current=1 box=0; Jake Rogers: BB current=0 box=1 | CHW |
| info | CURRENT_FINALIZED_MATCH_BOX | MIN model-prediction batting totals differ from final simulation box score (AB: current=36, sim=35; H: current=9, sim=8; 2B: current=1, sim=2; HR: current=1, sim=2; RBI: current=5, sim=6; R: current=5, sim=6; SO: current=7, sim=10; HBP: current=0, sim=1). | MIN |
| info | CURRENT_PLAYER_MATCH_BOX | MIN current finalized hitter lines are model predictions and differ from the simulation box score: Luke Keaschall: AB current=4 box=5, 2B current=1 box=0, BB current=1 box=0, SO current=0 box=1; Kaelen Culpepper: AB current=4 box=5, H current=1 box=2, 2B current=0 box=2, RBI current=0 box=2; Ryan Jeffers: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Royce Lewis: H current=1 box=2, HR current=0 box=1, RBI current=1 box=2, R current=0 box=1; Gabriel Gonzalez: AB current=3 box=2, H current=1 box=0, BB current=1 box=2; Ryan Kreidler: H current=1 box=0, BB current=0 box=1, SO current=1 box=0; Josh Bell: RBI current=1 box=0; Kody Clemens: AB current=4 box=3, H current=1 box=2, HR current=0 box=1, RBI current=1 box=2 | MIN |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
No large single-factor errors.
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| NYY | Carlos Rodón | 0 ER / 17 outs | 1 ER / 15 outs | 1 |
| SD | Robbie Ray | 3 ER / 17 outs | 5 ER / 7 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: Robbie Ray (SD) posted 19.29 ERA vs projected 4.76 (5 ER in 7 outs); no credible venue, opponent-strength or experience signal explains it — an outlier start (variance).
What to do: Variance — no model change is warranted for this start.
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Carlos Rodón (NYY) threw 15 outs, 1 ER = 1.8 ERA against a projected 0 ERA (1.8 ERA error)
Bullpen behind him: 0 ER over 4 outs.
The HOME lineup he faced produced 1 runs on 2 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
HOME pitching
Robbie Ray (SD) threw 7 outs, 5 ER = 19.29 ERA against a projected 4.76 ERA (14.53 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The AWAY lineup he faced produced 5 runs on 8 hits and 0 HR, against a projected 5 runs / 8 hits (0 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)
| Team | Pitcher | Outs | ERA | ER | H | HR | BB | SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|
| NYY | Carlos Rodón (Starter) | 15 / 17 | 1.8 / 0 | 1 / 0 | 2 / 3 | 1 / 0 | 3 / 1 | 7 / 5 | venue away: 3.41 vs 2.92 ERA (ok) · opp run factor 1 (average) · 12 prior appearances this season |
| NYY | Brent Headrick (Setup Man) | 4 / 3 | 0 / 18 (-18.00) | 0 / 2 | 0 / 1 | 0 / 0 | 0 / 1 | 2 / 1 | |
| SD | Robbie Ray (Starter) | 7 / 17 | 19.29 / 4.76 (+14.53) | 5 / 3 | 5 / 5 | 0 / 1 | 4 / 5 | 1 / 4 | venue home: 2.72 vs 3.98 ERA (ok) · opp run factor 1.03 (average) · 27 prior appearances this season |
Hitters: actual / projected (sorted by run impact vs projection)
| Team | Batter | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| SD | Manny Machado (3B) | 2 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 2 / 1 | 0 / 1 | 1.26 | 0.333 above average | projection too low |
| SD | Fernando Tatis Jr. (RF) | 3 / 5 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 0 | 0 / 1 | -1.07 | 0.374 elite | bad day |
| NYY | Spencer Jones (CF) | 4 / 3 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 0 / 0 | 1 / 1 | 0.78 | 0.329 above average | projection too low |
| SD | Luis Campusano (DH) | 3 / 3 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | -0.78 | 0.335 above average | bad day |
| NYY | Amed Rosario (2B) | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.312 average | — |
| SD | Freddy Fermin (C) | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | -0.47 | 0.273 weak | — |
| SD | Samad Taylor (LF) | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 3 / 1 | -0.47 | 0.309 average | — |
| NYY | Ben Rice (DH) | 3 / 5 | 3 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 2 / 1 | 2 / 1 | 0 / 1 | 0.34 | 0.378 elite | — |
| NYY | Cody Bellinger (LF) | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | -0.33 | 0.342 elite | — |
| NYY | Paul Goldschmidt (1B) | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 0.33 | 0.313 average | — |
| SD | Xander Bogaerts (SS) | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 1 / 1 | -0.33 | 0.321 above average | — |
| NYY | Heliot Ramos (RF) | 2 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 1 / 1 | -0.31 | 0.326 above average | — |
| NYY | José Caballero (3B) | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 2 / 0 | 0 / 1 | 0.19 | 0.28 weak | — |
| NYY | Austin Wells (C) | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 1 / 0 | 1 / 1 | -0.14 | 0.291 below average | — |
| SD | Ty France (1B) | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 2 / 1 | -0.14 | 0.331 above average | — |
| SD | Jackson Merrill (CF) | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 1 / 1 | -0.14 | 0.336 above average | — |
| NYY | George Lombard Jr. (SS) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 0 | 0.284 below average | — |
| SD | Jake Cronenworth (2B) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.272 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.736 | positive favors home; negative favors away |
| Recent form | -0.278 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.03 | positive favors home; negative favors away |
| Composite | -0.72 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.34-3.6 | n/a | Base ML historical model prediction |
| variance_applied | 4-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-3 | 0.549 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-3 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-3 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-3 | n/a | Capped at max 12 realistic runs |
| simulation_result | 4-3 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.34-3.6 | 4-4 | -0.744 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-4 | 4-3 | 1 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-3 | 4-3 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-3 | 4-3 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-3 | 4-3 | -0 | Capped at max 12 realistic runs |
| simulation_result | 4-3 | 4-3 | -0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| NYY | Ben Rice | batter / DH | better | predicted_RBI 3.17 |
| NYY | Austin Wells | batter / C | worse | predicted_H 2.41 |
| NYY | Heliot Ramos | batter / RF | better | predicted_BB 1.75 |
| SD | Jake Cronenworth | batter / 2B | better | predicted_H 1.5 |
| SD | Fernando Tatis Jr. | batter / RF | worse | predicted_H -1.28 |
| NYY | Amed Rosario | batter / 2B | better | predicted_AB 1.253 |
| SD | Jackson Merrill | batter / CF | worse | predicted_SO -1.029 |
| NYY | Carlos Rodón | pitcher / Starter | neutral | predicted_SO 1 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| 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_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 | NYY model-prediction batting totals differ from final simulation box score (AB: current=32, sim=35; 3B: current=0, sim=1; RBI: current=5, sim=4; R: current=5, sim=4; BB: current=3, sim=5; SO: current=9, sim=6). | NYY |
| info | CURRENT_PLAYER_MATCH_BOX | NYY current finalized hitter lines are model predictions and differ from the simulation box score: Amed Rosario: AB current=3 box=4, 2B current=0 box=1, RBI current=1 box=0, R current=0 box=1; Heliot Ramos: AB current=4 box=2, 2B current=1 box=0, 3B current=0 box=1, RBI current=1 box=0; Cody Bellinger: AB current=4 box=5, R current=1 box=0, BB current=1 box=0; George Lombard Jr.: AB current=3 box=4, H current=0 box=1, R current=1 box=0; José Caballero: H current=1 box=0, R current=1 box=0, BB current=0 box=1, SO current=1 box=0; Ben Rice: RBI current=1 box=4, BB current=1 box=0; Paul Goldschmidt: H current=1 box=0, BB current=0 box=1; Spencer Jones: AB current=3 box=4, H current=1 box=0, RBI current=1 box=0, R current=1 box=0 | NYY |
| info | CURRENT_FINALIZED_MATCH_BOX | SD model-prediction batting totals differ from final simulation box score (AB: current=32, sim=34; HR: current=1, sim=0; RBI: current=4, sim=3; R: current=4, sim=3; BB: current=3, sim=2; SO: current=8, sim=7; SF: current=0, sim=1; HBP: current=0, sim=1). | SD |
| info | CURRENT_PLAYER_MATCH_BOX | SD current finalized hitter lines are model predictions and differ from the simulation box score: Ty France: RBI current=1 box=0, HBP current=0 box=1; Xander Bogaerts: RBI current=1 box=0; Luis Campusano: 2B current=1 box=0, RBI current=0 box=1, R current=0 box=1, BB current=1 box=0; Manny Machado: RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Fernando Tatis Jr.: AB current=5 box=4, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Jackson Merrill: H current=1 box=2, RBI current=0 box=1, SO current=1 box=0; Freddy Fermin: AB current=3 box=4, H current=1 box=0, SO current=0 box=1; Jake Cronenworth: AB current=3 box=4, H current=0 box=2, 2B current=0 box=1, RBI current=0 box=1 | SD |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| OAK | Jeffrey Springs | 5 ER / 12 outs | 0 ER / 21 outs | -5 |
| SEA | George Kirby | 6 ER / 16 outs | 3 ER / 20 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: Jeffrey Springs (OAK) posted 0.00 ERA vs projected 11.25 (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
Jeffrey Springs (OAK) threw 21 outs, 0 ER = 0 ERA against a projected 11.25 ERA (-11.25 ERA error)
Bullpen behind him: 1 ER over 3 outs.
The HOME lineup he faced produced 2 runs on 6 hits and 0 HR, against a projected 4 runs / 8 hits (-2 runs vs projection).
No individual hitter beat his projection by a meaningful margin.
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
George Kirby (SEA) threw 20 outs, 3 ER = 4.05 ERA against a projected 10.12 ERA (-6.07 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The AWAY lineup he faced produced 6 runs on 9 hits and 2 HR, against a projected 4 runs / 8 hits (2 runs vs projection).
Who did the damage to him:
Verdict: offense: the lineup scored well below its projection
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material)
| Team | Pitcher | Outs | ERA | ER | H | HR | BB | SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|
| OAK | Jeffrey Springs (Starter) | 21 / 12 | 0 / 11.25 (-11.25) | 0 / 5 | 2 / 5 | 0 / 1 | 2 / 3 | 6 / 6 | venue away: 5.37 vs 7.18 ERA (ok) · opp run factor 0.95 (weak) · 25 prior appearances this season |
| OAK | Elvis Alvarado (Closer) | 3 / 2 | 9 / 0 (+9.00) | 1 / 0 | 2 / 0 | 0 / 0 | 1 / 0 | 1 / 2 | |
| SEA | George Kirby (Starter) | 20 / 16 | 4.05 / 10.12 (-6.07) | 3 / 6 | 7 / 10 | 1 / 1 | 1 / 0 | 5 / 3 | venue home: 3.21 vs 5.48 ERA (ok) · opp run factor 1 (weak) · 26 prior appearances this season |
Hitters: actual / projected (sorted by run impact vs projection)
| Team | Batter | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| OAK | Max Muncy (DH) | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 2 / 0 | 0 / 0 | 1 / 1 | 1.4 | 0.293 below average | good day |
| OAK | Zack Gelof (3B) | 4 / 5 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 2 / 1 | 0 / 0 | 0 / 1 | -0.93 | 0.316 average | no signal |
| SEA | Taylor Ward (RF) | 2 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | -0.8 | 0.333 above average | bad day |
| OAK | Lawrence Butler (RF) | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | 1 / 0 | 0 / 1 | 1 / 1 | 0.6 | 0.324 above average | projection too low |
| SEA | Julio Rodríguez (CF) | 4 / 5 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -0.47 | 0.336 above average | — |
| SEA | Josh Naylor (1B) | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | -0.47 | 0.313 average | — |
| SEA | Randy Arozarena (LF) | 3 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 1 | -0.31 | 0.349 elite | — |
| OAK | Alika Williams (SS) | 4 / 3 | 2 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0.16 | 0.245 weak | — |
| OAK | Jonah Heim (C) | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | -0.14 | 0.292 below average | — |
| SEA | Cole Young (2B) | 2 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 0 | 1 / 1 | -0.14 | 0.316 average | — |
| OAK | Henry Bolte (LF) | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | -0.02 | 0.311 average | — |
| OAK | Donovan Walton (2B) | 4 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | -0.02 | 0.331 above average | — |
| SEA | Cal Raleigh (C) | 4 / 4 | 3 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | -0.01 | 0.315 average | — |
| OAK | Jeff McNeil (1B) | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 0 | 0.307 average | — |
| OAK | Denzel Clarke (CF) | 4 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.2 weak | — |
| SEA | Dominic Canzone (DH) | 4 / 5 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.356 elite | — |
| SEA | Weston Wilson (3B) | 4 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.26 weak | — |
| SEA | J.P. Crawford (SS) | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 0 | 0.327 above average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.478 | positive favors home; negative favors away |
| Recent form | -0.342 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.052 | positive favors home; negative favors away |
| Composite | 0.424 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.11-4.8 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 6-7 | 0.53 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 6-8 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-8 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-8 | n/a | Capped at max 12 realistic runs |
| simulation_result | 6-8 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.11-4.8 | 4-5 | 0.304 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 6-7 | 0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 6-7 | 6-8 | 1 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-8 | 6-8 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-8 | 6-8 | 0 | Capped at max 12 realistic runs |
| simulation_result | 6-8 | 6-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 |
|---|---|---|---|---|
| SEA | Cal Raleigh | batter / C | worse | predicted_SO 3.689 |
| OAK | Henry Bolte | batter / LF | better | predicted_RBI 3.684 |
| SEA | Randy Arozarena | batter / LF | better | predicted_RBI 3.28 |
| OAK | Jonah Heim | batter / C | worse | predicted_H 2.06 |
| SEA | Taylor Ward | batter / RF | worse | predicted_SO 2.054 |
| OAK | Jeff McNeil | batter / 1B | better | predicted_2B 1.837 |
| SEA | Dominic Canzone | batter / DH | worse | predicted_2B 1.815 |
| SEA | Weston Wilson | batter / 3B | better | predicted_BB 1.68 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | OAK pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | OAK |
| info | CURRENT_PITCHER_DUPLICATION | 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 | OAK model pitcher projections differ from final simulation pitching box score (H: current=9, sim=11; HR: current=1, sim=2). | OAK |
| info | CURRENT_FINALIZED_MATCH_BOX | OAK model-prediction batting totals differ from final simulation box score (AB: current=32, sim=39; H: current=8, sim=12; 2B: current=1, sim=4; RBI: current=4, sim=6; R: current=4, sim=6; BB: current=3, sim=0; SO: current=8, 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: AB current=4 box=5, HR current=0 box=1, RBI current=1 box=4, BB current=1 box=0; Jeff McNeil: AB current=3 box=5, H current=1 box=2, 2B current=0 box=2, RBI current=1 box=0; Max Muncy: AB current=3 box=4, RBI current=0 box=1, R current=0 box=1, SO current=1 box=0; Jonah Heim: H current=1 box=3, 2B current=0 box=1, R current=0 box=1, SO current=1 box=0; Alika Williams: AB current=3 box=4, 2B current=1 box=0; Zack Gelof: H current=1 box=2, HR current=1 box=0, RBI current=1 box=0; Lawrence Butler: H current=1 box=0, RBI current=1 box=0, BB current=1 box=0, SO current=1 box=0; Donovan Walton: AB current=3 box=4, 2B current=0 box=1, RBI current=0 box=1, BB current=1 box=0 | OAK |
| info | CURRENT_FINALIZED_MATCH_BOX | SEA model-prediction batting totals differ from final simulation box score (H: current=8, sim=11; 2B: current=1, sim=6; HR: current=1, sim=2; RBI: current=4, sim=8; R: current=4, sim=8; BB: current=4, sim=6; SO: current=8, sim=12; HBP: current=0, sim=1). | SEA |
| info | CURRENT_PLAYER_MATCH_BOX | SEA current finalized hitter lines are model predictions and differ from the simulation box score: Cal Raleigh: AB current=4 box=5, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Julio Rodríguez: AB current=5 box=4, H current=1 box=0, BB current=0 box=1, SO current=1 box=2; Dominic Canzone: AB current=5 box=4, H current=1 box=2, 2B current=0 box=2, RBI current=1 box=0; Taylor Ward: AB current=4 box=5, HR current=0 box=1, RBI current=0 box=2, R current=0 box=1; Randy Arozarena: H current=1 box=2, 2B current=1 box=2, RBI current=1 box=4, SO current=1 box=0; Josh Naylor: R current=0 box=1, HBP current=0 box=1; Cole Young: H current=1 box=2, 2B current=0 box=1, HR current=0 box=1, RBI current=0 box=1; Weston Wilson: AB current=3 box=2, H current=0 box=1, R current=0 box=1, BB current=0 box=2 | SEA |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| SF | Anthony Molina | 2 ER / 9 outs | 0 ER / 15 outs | -2 |
| NYM | Zac Thornton | 1 ER / 17 outs | 6 ER / 15 outs | 5 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Zac Thornton (NYM) posted 10.80 ERA vs projected 1.59 (6 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
Anthony Molina (SF) threw 15 outs, 0 ER = 0 ERA against a projected 6 ERA (-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: 2 ER over 7 outs.
The HOME lineup he faced produced 5 runs on 5 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
HOME pitching
Zac Thornton (NYM) threw 15 outs, 6 ER = 10.8 ERA against a projected 1.59 ERA (9.21 ERA error) only 11 prior appearances in the covered season - the projection had little of his own record to stand on
Bullpen behind him: 0 ER over 0 outs.
The AWAY lineup he faced produced 9 runs on 10 hits and 6 HR, against a projected 4 runs / 7 hits (5 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)
| Team | Pitcher | Outs | ERA | ER | H | HR | BB | SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|
| SF | Anthony Molina (Starter) | 15 / 9 | 0 / 6 (-6.00) | 0 / 2 | 1 / 3 | 1 / 0 | 1 / 1 | 6 / 2 | opp run factor 1 (weak) · 5 prior appearances this season |
| SF | Trent Harris (Setup Man) | 3 / 4 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | |
| SF | Carson Seymour (Middle Reliever (High Leverage)) | 1 / 3 | 0 / 18 (-18.00) | 0 / 2 | 0 / 2 | 0 / 1 | 1 / 0 | 0 / 1 | |
| SF | Jason Foley (Middle Reliever (High Leverage)) | 3 / 3 | 18 / 9 (+9.00) | 2 / 1 | 2 / 3 | 0 / 0 | 1 / 0 | 0 / 0 | |
| NYM | Zac Thornton (Starter) | 15 / 17 | 10.8 / 1.59 (+9.21) | 6 / 1 | 7 / 3 | 4 / 1 | 1 / 1 | 6 / 5 | venue home: 2.92 vs 2.95 ERA (ok) · opp run factor 0.98 (weak) · 11 prior appearances this season |
Hitters: actual / projected (sorted by run impact vs projection)
| Team | Batter | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| SF | Christian Koss (SS) | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 2 / 0 | 3 / 0 | 2 / 1 | 0 / 0 | 0 / 1 | 2.33 | 0.24 weak | good day |
| NYM | Juan Soto (LF) | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | -1.73 | 0.416 elite | bad day |
| SF | Grant McCray (RF) | 4 / 4 | 2 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 2 / 0 | 0 / 1 | 0 / 1 | 1.54 | 0.325 above average | projection too low |
| NYM | A.J. Ewing (CF) | 2 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 2 / 0 | 2 / 1 | 0 / 1 | 1.26 | 0.317 average | no signal |
| SF | Rafael Devers (1B) | 4 / 5 | 2 / 1 | 0 / 0 | 0 / 0 | 2 / 1 | 3 / 2 | 2 / 1 | 0 / 1 | 0 / 1 | 1.07 | 0.34 elite | projection too low |
| NYM | Jared Young (1B) | 4 / 3 | 2 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 0 | 1 / 1 | 0.94 | 0.309 average | no signal |
| SF | Osleivis Basabe (2B) | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 1 / 0 | 0 / 0 | 2 / 1 | 0.93 | 0.283 weak | good day |
| NYM | Francisco Lindor (SS) | 5 / 5 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -0.8 | 0.338 above average | bad day |
| SF | Turner Hill (LF) | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 2 / 1 | -0.78 | 0.346 elite | bad day |
| NYM | Bo Bichette (DH) | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 2 / 1 | -0.78 | 0.325 above average | bad day |
| NYM | Brett Baty (3B) | 3 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 3 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0.64 | 0.306 average | no signal |
| SF | Shay Whitcomb (3B) | 4 / 4 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.251 weak | — |
| NYM | Carson Benge (RF) | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 2 / 1 | -0.47 | 0.336 above average | — |
| NYM | Francisco Alvarez (C) | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 3 / 1 | -0.47 | 0.326 above average | — |
| NYM | Marcus Semien (2B) | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 1 | 0.33 | 0.305 average | — |
| SF | Andrew Knizner (C) | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | -0.14 | 0.271 weak | — |
| SF | Jonah Cox (CF) | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 0 | 1 / 2 | 0 | 0.274 weak | — |
| SF | Bryce Eldridge (DH) | 3 / 5 | 1 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 1 / 1 | 1 / 1 | 0 | 0.357 elite | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.183 | positive favors home; negative favors away |
| Recent form | 0.206 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.016 | positive favors home; negative favors away |
| Composite | 0.368 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.38-4.35 | 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.524 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run) |
| embedded_savant_run_environment | 4-5 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 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.38-4.35 | 4-4 | 0.028 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-4 | 4-5 | 1 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run) |
| embedded_savant_run_environment | 4-5 | 4-5 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-5 | 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 |
|---|---|---|---|---|
| SF | Andrew Knizner | batter / C | worse | predicted_SO 2.516 |
| SF | Jonah Cox | batter / CF | worse | predicted_AB 2.5 |
| SF | Anthony Molina | pitcher / Starter | worse | predicted_IP -2 |
| NYM | Zac Thornton | pitcher / Starter | neutral | predicted_SO 2 |
| NYM | Daniel Duarte | pitcher / Setup Man | worse | predicted_SO -2 |
| NYM | Juan Soto | batter / LF | worse | predicted_AB -1.9 |
| NYM | Jared Young | batter / 1B | better | predicted_RBI 1.79 |
| SF | Bryce Eldridge | batter / DH | worse | predicted_AB -1.69 |
| 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 | 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 | NYM model pitcher projections differ from final simulation pitching box score (HR: current=1, sim=2). | NYM |
| info | CURRENT_FINALIZED_MATCH_BOX | NYM model-prediction batting totals differ from final simulation box score (AB: current=35, sim=32; 2B: current=1, sim=3; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=2; SO: current=8, sim=4). | NYM |
| info | CURRENT_PLAYER_MATCH_BOX | NYM current finalized hitter lines are model predictions and differ from the simulation box score: Bo Bichette: H current=1 box=2, HR current=0 box=1, RBI current=1 box=2, SO current=1 box=0; Jared Young: AB current=3 box=4, H current=0 box=2, 2B current=0 box=1, RBI current=0 box=2; A.J. Ewing: RBI current=0 box=1, R current=0 box=1, BB current=1 box=0, SO current=1 box=0; Francisco Lindor: AB current=5 box=4, 2B current=0 box=1, RBI current=1 box=0, BB current=1 box=0; Juan Soto: AB current=4 box=2, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Francisco Alvarez: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Brett Baty: H current=1 box=0, SO current=1 box=0 | NYM |
| info | CURRENT_FINALIZED_MATCH_BOX | SF model-prediction batting totals differ from final simulation box score (AB: current=38, sim=34; 2B: current=2, sim=1; HR: current=1, sim=2; RBI: current=5, sim=4; BB: current=3, sim=2; SO: current=10, sim=7; HBP: current=0, sim=1). | SF |
| info | CURRENT_PLAYER_MATCH_BOX | SF current finalized hitter lines are model predictions and differ from the simulation box score: Osleivis Basabe: 2B current=0 box=1, RBI current=0 box=2, R current=0 box=1; Turner Hill: 2B current=1 box=0, HR current=0 box=1, SO current=1 box=0; Rafael Devers: AB current=5 box=3, HR current=1 box=0, RBI current=2 box=0, SO current=1 box=0; Jonah Cox: AB current=4 box=5, RBI current=1 box=0, R current=1 box=0; Grant McCray: H current=0 box=1, BB current=1 box=0, SO current=1 box=0; Christian Koss: R current=1 box=0; Andrew Knizner: HR current=0 box=1, RBI current=0 box=1, R current=0 box=1, SO current=1 box=3; Shay Whitcomb: 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 |
|---|---|---|---|---|
| STL | Matthew Liberatore | 4 ER / 16 outs | 5 ER / 13 outs | 1 |
| COL | Mason Adams | 4 ER / 13 outs | 3 ER / 14 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: Matthew Liberatore (STL) posted 10.38 ERA vs projected 6.75 (5 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
Matthew Liberatore (STL) threw 13 outs, 5 ER = 10.38 ERA against a projected 6.75 ERA (3.63 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 10 runs on 11 hits and 0 HR, against a projected 4 runs / 9 hits (6 runs vs projection).
Who did the damage to him:
Verdict: pitching: the starter gave up runs at a far worse rate than projected
HOME pitching
Mason Adams (COL) threw 14 outs, 3 ER = 5.79 ERA against a projected 8.31 ERA (-2.52 ERA error) only 2 prior appearances in the covered season - the projection had little of his own record to stand on
Bullpen behind him: 0 ER over 7 outs.
The AWAY lineup he faced produced 6 runs on 12 hits and 2 HR, against a projected 5 runs / 9 hits (1 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material)
| Team | Pitcher | Outs | ERA | ER | H | HR | BB | SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|
| STL | Matthew Liberatore (Starter) | 13 / 16 | 10.38 / 6.75 (+3.63) | 5 / 4 | 4 / 7 | 0 / 1 | 2 / 1 | 3 / 4 | venue away: 4.93 vs 5.87 ERA (ok) · opp run factor 1.05 (average) · 27 prior appearances this season |
| COL | Mason Adams (Starter) | 14 / 13 | 5.79 / 8.31 | 3 / 4 | 8 / 5 | 2 / 1 | 1 / 2 | 7 / 2 | opp run factor 0.99 (average) · thin sample: 2 prior appearances this season (high uncertainty) |
| COL | Jaden Hill (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | |
| COL | Jordan Romano (Closer) | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 2 | |
| COL | Brennan Bernardino (Setup Man) | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 |
Hitters: actual / projected (sorted by run impact vs projection)
| Team | Batter | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| STL | Iván Herrera (DH) | 5 / 5 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 3 / 1 | 1 / 1 | 0 / 1 | 2 / 1 | 1.07 | 0.333 above average | projection too low |
| COL | Hunter Goodman (C) | 5 / 5 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 2 / 1 | 1 / 1 | 0 / 0 | 2 / 1 | -0.93 | 0.324 above average | bad day |
| STL | Thomas Saggese (SS) | 2 / 3 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | 0.78 | 0.311 average | no signal |
| STL | Jordan Walker (RF) | 5 / 5 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 3 / 1 | -0.78 | 0.349 elite | bad day |
| COL | Connor Norby (3B) | 2 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 2 / 0 | 0 / 1 | 0.66 | 0.301 below average | good day |
| COL | Jake McCarthy (LF) | 3 / 5 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 2 / 0 | 0 / 1 | 0.66 | 0.319 average | no signal |
| STL | Joshua Baez (LF) | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 2 / 1 | 0 / 0 | 2 / 1 | 0.47 | 0.329 above average | — |
| COL | Jordan Beck (RF) | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.243 weak | — |
| COL | Ezequiel Tovar (SS) | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0.278 weak | — |
| STL | Bryan Torres (2B) | 2 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0.33 | 0.301 below average | — |
| STL | Nolan Gorman (3B) | 4 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0.31 | 0.275 weak | — |
| STL | Leonardo Bernal (C) | 5 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | -0.17 | 0.377 elite | — |
| COL | Cole Carrigg (CF) | 4 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | -0.17 | 0.323 above average | — |
| COL | Adael Amador (2B) | 4 / 3 | 2 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | -0.17 | 0.261 weak | — |
| COL | TJ Rumfield (1B) | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 1 | 0 / 0 | -0.02 | 0.334 above average | — |
| STL | Alec Burleson (1B) | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.37 elite | — |
| STL | Nathan Church (CF) | 2 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0 | 0.283 weak | — |
| COL | Troy Johnston (DH) | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0 | 0.329 above average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.736 | positive favors home; negative favors away |
| Recent form | -0.199 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.057 | positive favors home; negative favors away |
| Composite | -0.509 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 5.71-5.17 | n/a | Base ML historical model prediction |
| variance_applied | 6-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 7-6 | 0.509 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by winner_starter_is_below_average, starter_quality_favours_the_other_side, projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 7-6 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 7-6 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 7-6 | n/a | Capped at max 12 realistic runs |
| simulation_result | 7-6 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 5.71-5.17 | 6-5 | 0.457 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 6-5 | 7-6 | -0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by winner_starter_is_below_average, starter_quality_favours_the_other_side, projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 7-6 | 7-6 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 7-6 | 7-6 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 7-6 | 7-6 | -0 | Capped at max 12 realistic runs |
| simulation_result | 7-6 | 7-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 |
|---|---|---|---|---|
| STL | Bryan Torres | batter / 2B | deboosted | predicted_AB 2.5 |
| STL | Leonardo Bernal | batter / C | worse | predicted_RBI 2.42 |
| STL | Joshua Baez | batter / LF | better | predicted_RBI 2.263 |
| COL | Troy Johnston | batter / DH | better | predicted_AB -2.17 |
| COL | Connor Norby | batter / 3B | better | predicted_AB 1.814 |
| COL | TJ Rumfield | batter / 1B | worse | predicted_BB 1.522 |
| STL | Iván Herrera | batter / DH | worse | predicted_H -1.47 |
| COL | Jordan Beck | batter / RF | deboosted | predicted_H 1.438 |
| 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 | STL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | STL |
| info | CURRENT_FINALIZED_MATCH_BOX | COL model-prediction batting totals differ from final simulation box score (AB: current=33, sim=36; H: current=9, sim=10; HR: current=1, sim=2; RBI: current=4, sim=6; R: current=4, sim=6; SO: current=8, sim=5; SF: current=0, sim=1; HBP: current=0, sim=1). | 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=3 box=5, HR current=0 box=1, RBI current=0 box=1, R current=0 box=1; Cole Carrigg: AB current=4 box=5, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Jordan Beck: AB current=3 box=4, H current=1 box=2, R current=0 box=1, SO current=1 box=0; Troy Johnston: AB current=3 box=1, 2B current=0 box=1, RBI current=0 box=2, R current=0 box=1; TJ Rumfield: AB current=4 box=3, RBI current=1 box=0, BB current=1 box=2, SO current=0 box=1; Adael Amador: AB current=3 box=4, 2B current=1 box=0, HR current=0 box=1, RBI current=1 box=2; Hunter Goodman: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Jake McCarthy: H current=1 box=2 | COL |
| info | CURRENT_FINALIZED_MATCH_BOX | STL model-prediction batting totals differ from final simulation box score (AB: current=34, sim=36; 2B: current=2, sim=1; HR: current=1, sim=2; RBI: current=5, sim=7; R: current=5, sim=7; BB: current=3, sim=4; SO: current=8, sim=6). | STL |
| info | CURRENT_PLAYER_MATCH_BOX | STL current finalized hitter lines are model predictions and differ from the simulation box score: Bryan Torres: AB current=3 box=5, H current=1 box=0; Leonardo Bernal: AB current=4 box=3, 2B current=1 box=0, HR current=0 box=1, RBI current=1 box=3; Joshua Baez: AB current=3 box=4, RBI current=1 box=3, SO current=1 box=0; Iván Herrera: AB current=5 box=4, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Thomas Saggese: AB current=3 box=4, H current=1 box=2, 2B current=0 box=1, RBI current=0 box=1; Alec Burleson: AB current=4 box=5, H current=1 box=2, RBI current=1 box=0, R current=0 box=1; Jordan Walker: 2B current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Nathan Church: AB current=4 box=3, R current=0 box=1, BB current=0 box=1, SO current=1 box=0 | STL |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
No large single-factor errors.
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| TB | Drew Rasmussen | 3 ER / 18 outs | 1 ER / 21 outs | -2 |
| TEX | Jacob deGrom | 4 ER / 15 outs | 2 ER / 18 outs | -2 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Jacob deGrom (TEX) posted 3.00 ERA vs projected 7.20 (2 ER in 18 outs); he faced a strong offense (opponent run factor 1.07, 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
Drew Rasmussen (TB) threw 21 outs, 1 ER = 1.29 ERA against a projected 4.5 ERA (-3.21 ERA error)
Bullpen behind him: 2 ER over 7 outs.
The HOME lineup he faced produced 2 runs on 5 hits and 2 HR, against a projected 5 runs / 8 hits (-3 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Jacob deGrom (TEX) threw 18 outs, 2 ER = 3 ERA against a projected 7.2 ERA (-4.2 ERA error)
Bullpen behind him: 3 ER over 8 outs.
The AWAY lineup he faced produced 5 runs on 8 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
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)
| Team | Pitcher | Outs | ERA | ER | H | HR | BB | SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|
| TB | Drew Rasmussen (Starter) | 21 / 18 | 1.29 / 4.5 (-3.21) | 1 / 3 | 3 / 3 | 1 / 0 | 0 / 2 | 7 / 6 | venue away: 2.69 vs 3.22 ERA (ok) · opp run factor 1.02 (weak) · 26 prior appearances this season |
| TB | Kevin Kelly (Setup Man) | 1 / 3 | 54 / 18 (+36.00) | 2 / 2 | 2 / 4 | 1 / 2 | 0 / 0 | 0 / 1 | |
| TB | Tyler Wells (Middle Reliever (High Leverage)) | 6 / 3 | 0 / 0 | 0 / 0 | 0 / 2 | 0 / 0 | 0 / 0 | 3 / 1 | |
| TEX | Jacob deGrom (Starter) | 18 / 15 | 3 / 7.2 (-4.20) | 2 / 4 | 4 / 5 | 2 / 1 | 1 / 2 | 7 / 4 | venue home: 2.42 vs 5.86 ERA (ok) · opp run factor 1.07 (average) · 26 prior appearances this season |
| TEX | Jacob Latz (Closer) | 5 / 5 | 10.8 / 0 (+10.80) | 2 / 0 | 1 / 0 | 1 / 0 | 2 / 0 | 1 / 0 | |
| TEX | Jakob Junis (Setup Man) | 3 / 5 | 9 / 10.8 | 1 / 2 | 3 / 2 | 0 / 2 | 0 / 1 | 0 / 0 |
Hitters: actual / projected (sorted by run impact vs projection)
| Team | Batter | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| TB | Yandy Díaz (DH) | 4 / 6 | 0 / 2 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 0 / 1 | -1.25 | 0.355 elite | bad day |
| TB | Jonathan Aranda (1B) | 5 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 3 / 1 | 2 / 1 | 0 / 1 | 2 / 1 | 1.07 | 0.35 elite | projection too low |
| TB | Richie Palacios (2B) | 2 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0.93 | 0.305 average | no signal |
| TEX | Evan Carter (CF) | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 2 / 1 | 0.93 | 0.28 weak | good day |
| TEX | Ezequiel Duran (2B) | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -0.8 | 0.306 average | no signal |
| TEX | Wyatt Langford (LF) | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | -0.8 | 0.313 average | no signal |
| TEX | Brandon Nimmo (RF) | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | -0.78 | 0.353 elite | bad day |
| TB | Liam Hicks (C) | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0.47 | 0.316 average | — |
| TB | Chandler Simpson (LF) | 5 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | -0.47 | 0.261 weak | — |
| TB | Cedric Mullins (CF) | 4 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.267 weak | — |
| TEX | Cody Freeman (3B) | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | -0.47 | 0.231 weak | — |
| TEX | Danny Jansen (C) | 3 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.25 weak | — |
| TEX | Corey Seager (SS) | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | -0.33 | 0.351 elite | — |
| TB | Junior Caminero (3B) | 5 / 5 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 1 / 1 | 0 / 1 | 2 / 1 | 0.14 | 0.363 elite | — |
| TB | Taylor Walls (SS) | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 1 / 1 | -0.14 | 0.249 weak | — |
| TEX | Joc Pederson (DH) | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 0 | 1 / 1 | 0 / 0 | 2 / 1 | 0 | 0.342 elite | — |
| TEX | Jake Burger (1B) | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | 0 | 0.312 average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.589 | positive favors home; negative favors away |
| Recent form | -0.298 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.049 | positive favors home; negative favors away |
| Composite | -0.685 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.25-4.07 | n/a | Base ML historical model prediction |
| variance_applied | 4-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 6-5 | 0.533 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 6-5 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-5 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-5 | n/a | Capped at max 12 realistic runs |
| simulation_result | 6-5 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.25-4.07 | 4-4 | -0.18 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-4 | 6-5 | 1 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 6-5 | 6-5 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-5 | 6-5 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-5 | 6-5 | -0 | Capped at max 12 realistic runs |
| simulation_result | 6-5 | 6-5 | -0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| TEX | Corey Seager | batter / SS | worse | predicted_SO 2.988 |
| TEX | Joc Pederson | batter / DH | better | predicted_H 2.27 |
| TB | Jonathan Aranda | batter / 1B | better | predicted_SO 1.978 |
| TB | Junior Caminero | batter / 3B | better | predicted_AB -1.96 |
| TEX | Brandon Nimmo | batter / RF | better | predicted_H 1.94 |
| TEX | Ezequiel Duran | batter / 2B | better | predicted_AB 1.458 |
| TB | Liam Hicks | batter / C | better | predicted_RBI 1.43 |
| TB | Chandler Simpson | batter / LF | worse | predicted_AB -1.28 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| 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_PITCHER_DUPLICATION | TEX pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | TEX |
| info | CURRENT_FINALIZED_MATCH_BOX | TB model-prediction batting totals differ from final simulation box score (H: current=9, sim=8; 2B: current=1, sim=2; HR: current=1, sim=3; RBI: current=4, sim=6; R: current=4, sim=6; SO: current=6, sim=5). | TB |
| info | CURRENT_PLAYER_MATCH_BOX | TB current finalized hitter lines are model predictions and differ from the simulation box score: Yandy Díaz: AB current=6 box=5, H current=2 box=1, 2B current=1 box=0, BB current=1 box=0; Junior Caminero: AB current=5 box=3, SO current=1 box=0; Jonathan Aranda: AB current=4 box=5, H current=1 box=2, 2B current=0 box=1, HR current=0 box=1; Liam Hicks: AB current=4 box=3, H current=1 box=2, 2B current=0 box=1, HR current=0 box=1; Chandler Simpson: AB current=4 box=3, R current=0 box=1, BB current=0 box=1; Cedric Mullins: AB current=3 box=4, SO current=1 box=0; Victor Mesa Jr.: AB current=3 box=4, RBI current=0 box=1, R current=0 box=1, SO current=1 box=0; Richie Palacios: AB current=3 box=4, H current=1 box=0 | TB |
| info | CURRENT_FINALIZED_MATCH_BOX | TEX model-prediction batting totals differ from final simulation box score (AB: current=32, sim=37; H: current=8, sim=10; 2B: current=1, sim=3; HR: current=1, sim=2; RBI: current=4, sim=5; BB: current=3, sim=2; SO: current=8, sim=10; HBP: current=0, sim=2). | TEX |
| info | CURRENT_PLAYER_MATCH_BOX | TEX current finalized hitter lines are model predictions and differ from the simulation box score: Joc Pederson: AB current=3 box=4, H current=1 box=3, 2B current=0 box=1, HR current=1 box=0; Ezequiel Duran: AB current=4 box=5, HR current=0 box=1, BB current=1 box=0; Corey Seager: AB current=4 box=5, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Wyatt Langford: AB current=4 box=5, 2B current=0 box=1, RBI current=0 box=1, BB current=1 box=0; Brandon Nimmo: AB current=4 box=5, H current=1 box=3, HR current=0 box=1, R current=0 box=1; Cody Freeman: AB current=3 box=2, H current=1 box=0, BB current=0 box=1, HBP current=0 box=1; Jake Burger: RBI current=1 box=0, SO current=1 box=2; Danny Jansen: AB current=3 box=4 | TEX |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| TOR | Max Scherzer | 4 ER / 15 outs | 3 ER / 17 outs | -1 |
| KC | Seth Lugo | 2 ER / 15 outs | 3 ER / 15 outs | 1 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Max Scherzer (TOR) threw 17 outs, 3 ER = 4.76 ERA against a projected 7.2 ERA (-2.44 ERA error)
Bullpen behind him: 0 ER over 9 outs.
The HOME lineup he faced produced 3 runs on 6 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
HOME pitching
Seth Lugo (KC) threw 15 outs, 3 ER = 5.4 ERA against a projected 3.6 ERA (1.8 ERA error)
Bullpen behind him: 0 ER over 3 outs.
The AWAY lineup he faced produced 4 runs on 13 hits and 0 HR, against a projected 4 runs / 9 hits (0 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material)
| Team | Pitcher | Outs | ERA | ER | H | HR | BB | SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|
| TOR | Max Scherzer (Starter) | 17 / 15 | 4.76 / 7.2 | 3 / 4 | 5 / 4 | 1 / 1 | 1 / 2 | 2 / 3 | venue away: 6 vs 6.23 ERA (ok) · opp run factor 1 (weak) · 13 prior appearances this season |
| TOR | Louis Varland (Closer) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | |
| TOR | Tyler Rogers (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | |
| TOR | Mason Fluharty (Middle Reliever) | 3 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | |
| KC | Seth Lugo (Starter) | 15 / 15 | 5.4 / 3.6 | 3 / 2 | 8 / 5 | 0 / 0 | 2 / 0 | 1 / 6 | venue home: 4.01 vs 6.19 ERA (ok) · opp run factor 1.09 (weak) · 28 prior appearances this season |
| KC | Craig Kimbrel (Middle Reliever (High Leverage)) | 3 / 5 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 1 / 1 |
Hitters: actual / projected (sorted by run impact vs projection)
| Team | Batter | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| KC | Carter Jensen (C) | 3 / 5 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | -1.73 | 0.304 below average | projection too high |
| KC | John Rave (CF) | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 1 | 1 / 0 | 1 / 1 | 1.26 | 0.324 above average | projection too low |
| TOR | Nathan Lukes (RF) | 5 / 4 | 3 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0.94 | 0.287 below average | good day |
| KC | Vinnie Pasquantino (1B) | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 0 / 1 | -0.8 | 0.325 above average | bad day |
| TOR | Kazuma Okamoto (3B) | 5 / 4 | 4 / 1 | 2 / 0 | 0 / 0 | 0 / 1 | 2 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 0.77 | 0.319 average | no signal |
| KC | Salvador Perez (DH) | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.308 average | — |
| KC | Josh Rojas (3B) | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | -0.47 | 0.217 weak | — |
| TOR | George Springer (DH) | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 0 | 0 / 1 | -0.45 | 0.306 average | — |
| TOR | Vladimir Guerrero Jr. (1B) | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 1 / 0 | -0.33 | 0.333 above average | — |
| TOR | Andrés Giménez (SS) | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0.33 | 0.269 weak | — |
| KC | Isaac Collins (LF) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0.33 | 0.296 below average | — |
| TOR | Myles Straw (LF) | 4 / 3 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | -0.31 | 0.296 below average | — |
| KC | Jac Caglianone (RF) | 1 / 5 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -0.31 | 0.357 elite | — |
| KC | Michael Massey (2B) | 4 / 3 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | -0.31 | 0.306 average | — |
| KC | Bobby Witt Jr. (SS) | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 1 / 1 | -0.02 | 0.383 elite | — |
| TOR | Alejandro Kirk (C) | 5 / 5 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0 | 0.302 below average | — |
| TOR | Brett Bateman (CF) | 4 / 5 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 0 | 0.282 weak | — |
| TOR | Ernie Clement (2B) | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 | 0.266 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.491 | positive favors home; negative favors away |
| Recent form | -0.488 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.09 | positive favors home; negative favors away |
| Composite | -0.951 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.31-4.76 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 7-5 | 0.57 | 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-5 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 7-5 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 7-5 | n/a | Capped at max 12 realistic runs |
| simulation_result | 7-5 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.31-4.76 | 4-5 | -0.542 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 7-5 | 3 | 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-5 | 7-5 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 7-5 | 7-5 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 7-5 | 7-5 | -0 | Capped at max 12 realistic runs |
| simulation_result | 7-5 | 7-5 | -0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| TOR | George Springer | batter / DH | worse | predicted_RBI 3.27 |
| KC | Jac Caglianone | batter / RF | worse | predicted_RBI 2.29 |
| KC | Michael Massey | batter / 2B | boosted | predicted_RBI 1.57 |
| TOR | Alejandro Kirk | batter / C | worse | predicted_SO 1.5 |
| TOR | Myles Straw | batter / LF | better | predicted_AB 1.5 |
| KC | Salvador Perez | batter / DH | worse | predicted_AB -1.45 |
| TOR | Nathan Lukes | batter / RF | worse | predicted_SO 1.447 |
| KC | Bobby Witt Jr. | batter / SS | worse | predicted_AB -1.42 |
| 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 | 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 | KC model-prediction batting totals differ from final simulation box score (AB: current=34, sim=33; H: current=8, sim=6; RBI: current=4, sim=5; R: current=4, sim=5; SO: current=7, sim=6; HBP: current=0, sim=1). | KC |
| info | CURRENT_PLAYER_MATCH_BOX | KC current finalized hitter lines are model predictions and differ from the simulation box score: Jac Caglianone: AB current=5 box=4, 2B current=1 box=0, HR current=0 box=1, RBI current=1 box=3; Salvador Perez: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, HBP current=0 box=1; Bobby Witt Jr.: AB current=4 box=3, H current=1 box=0, R current=1 box=0, SO current=1 box=0; John Rave: H current=1 box=0, R current=1 box=0, BB current=0 box=1, SO current=1 box=0; Carter Jensen: HR current=1 box=0, RBI current=1 box=0, BB current=1 box=0; Josh Rojas: R current=0 box=1, BB current=0 box=1; Vinnie Pasquantino: H current=1 box=2, 2B current=0 box=1, RBI current=1 box=0, R current=0 box=1; Michael Massey: AB current=3 box=4, RBI current=0 box=2, R current=0 box=1, SO current=0 box=1 | KC |
| info | CURRENT_FINALIZED_MATCH_BOX | TOR model pitcher projections differ from final simulation pitching box score (BB: current=2, sim=3). | TOR |
| info | CURRENT_FINALIZED_MATCH_BOX | TOR model-prediction batting totals differ from final simulation box score (AB: current=36, sim=37; H: current=9, sim=10; 2B: current=2, sim=3; RBI: current=4, sim=7; R: current=4, sim=7; BB: current=3, sim=0; SO: current=6, sim=10). | TOR |
| info | CURRENT_PLAYER_MATCH_BOX | TOR current finalized hitter lines are model predictions and differ from the simulation box score: Alejandro Kirk: AB current=5 box=4, RBI current=1 box=0, R current=0 box=1, SO current=1 box=2; Brett Bateman: H current=1 box=2, 2B current=0 box=1, BB current=1 box=0, SO current=1 box=0; Vladimir Guerrero Jr.: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; George Springer: H current=1 box=2, 2B current=1 box=0, HR current=0 box=1, RBI current=1 box=4; Nathan Lukes: H current=1 box=0, SO current=1 box=2; Myles Straw: AB current=3 box=4, 2B current=1 box=0, RBI current=0 box=1, R current=0 box=1; Kazuma Okamoto: HR current=1 box=0, RBI current=1 box=0, BB current=1 box=0, SO current=1 box=2; Andrés Giménez: AB current=3 box=4, H current=1 box=2, 2B current=0 box=1, RBI current=0 box=1 | TOR |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| WAS | Cade Cavalli | 4 ER / 17 outs | 2 ER / 18 outs | -2 |
| LAD | Tyler Glasnow | 3 ER / 17 outs | 4 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:
Starter miss: Cade Cavalli (WAS) posted 3.00 ERA vs projected 6.35 (2 ER in 18 outs); he faced a strong offense (opponent run factor 1.09, 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
Cade Cavalli (WAS) threw 18 outs, 2 ER = 3 ERA against a projected 6.35 ERA (-3.35 ERA error)
Bullpen behind him: 4 ER over 4 outs.
The HOME lineup he faced produced 6 runs on 7 hits and 1 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
HOME pitching
Tyler Glasnow (LAD) threw 18 outs, 4 ER = 6 ERA against a projected 4.76 ERA (1.24 ERA error) only 9 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 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: 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)
| Team | Pitcher | Outs | ERA | ER | H | HR | BB | SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|
| WAS | Cade Cavalli (Starter) | 18 / 17 | 3 / 6.35 (-3.35) | 2 / 4 | 4 / 4 | 0 / 1 | 0 / 5 | 8 / 6 | venue away: 2.94 vs 3.27 ERA (ok) · opp run factor 1.09 (strong) · 29 prior appearances this season |
| WAS | Erik Tolman (Middle Reliever (High Leverage)) | 2 / 4 | 13.5 / 0 (+13.50) | 1 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | |
| WAS | Clayton Beeter (Closer) | 2 / 3 | 40.5 / 0 (+40.50) | 3 / 0 | 2 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | |
| LAD | Tyler Glasnow (Starter) | 18 / 17 | 6 / 4.76 | 4 / 3 | 6 / 2 | 0 / 0 | 3 / 4 | 8 / 9 | venue home: 4.08 vs 2.12 ERA (worse here) · opp run factor 1.05 (strong) · 9 prior appearances this season |
| LAD | Tanner Scott (Closer) | 3 / 3 | 9 / 0 (+9.00) | 1 / 0 | 3 / 0 | 0 / 0 | 0 / 0 | 3 / 2 |
Hitters: actual / projected (sorted by run impact vs projection)
| Team | Batter | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| LAD | Freddie Freeman (1B) | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | 2 / 1 | -1.73 | 0.374 elite | bad day |
| LAD | Alex Freeland (2B) | 2 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 0 / 1 | 1.13 | 0.289 below average | good day |
| WAS | Dylan Crews (CF) | 4 / 4 | 2 / 1 | 2 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 0 / 0 | 2 / 1 | 1.09 | 0.307 average | no signal |
| WAS | James Wood (RF) | 4 / 5 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 1 | 1 / 1 | -0.93 | 0.417 elite | bad day |
| LAD | Tommy Edman (CF) | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 3 / 1 | 1 / 1 | 0 / 0 | 2 / 1 | 0.93 | 0.316 average | no signal |
| LAD | Alex Call (LF) | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | -0.8 | 0.277 weak | projection too high |
| WAS | Daylen Lile (LF) | 5 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | 0.78 | 0.329 above average | projection too low |
| LAD | Teoscar Hernández (DH) | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -0.64 | 0.323 above average | bad day |
| WAS | Jorbit Vivas (2B) | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | -0.47 | 0.298 below average | — |
| WAS | Keibert Ruiz (C) | 3 / 3 | 2 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 0.47 | 0.286 below average | — |
| LAD | Kyle Tucker (RF) | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | -0.47 | 0.327 above average | — |
| WAS | Brady House (3B) | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | -0.31 | 0.336 above average | — |
| LAD | Mookie Betts (SS) | 4 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 0 | 1 / 0 | 0.16 | 0.329 above average | — |
| WAS | CJ Abrams (SS) | 4 / 5 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 3 / 1 | 0 | 0.328 above average | — |
| WAS | Abimelec Ortiz (1B) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 | 0.294 below average | — |
| WAS | José Tena (DH) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 | 0.297 below average | — |
| LAD | Hunter Feduccia (C) | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.319 average | — |
| LAD | Enrique Hernández (3B) | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 2 / 1 | 0 | 0.267 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.741 | positive favors home; negative favors away |
| Recent form | 0.306 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.041 | positive favors home; negative favors away |
| Composite | 0.753 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.79-5.11 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 3-4 | 0.573 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run) |
| embedded_savant_run_environment | 3-4 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 3-4 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 3-4 | n/a | Capped at max 12 realistic runs |
| simulation_result | 3-4 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 3.79-5.11 | 4-5 | -0.322 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 3-4 | 0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run) |
| embedded_savant_run_environment | 3-4 | 3-4 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 3-4 | 3-4 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 3-4 | 3-4 | 0 | Capped at max 12 realistic runs |
| simulation_result | 3-4 | 3-4 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| LAD | Mookie Betts | batter / SS | worse | predicted_RBI 3.21 |
| WAS | Keibert Ruiz | batter / C | worse | predicted_SO 2.607 |
| WAS | Jorbit Vivas | batter / 2B | worse | predicted_SO 2.58 |
| WAS | Daylen Lile | batter / LF | worse | predicted_SO 2.206 |
| WAS | Cade Cavalli | pitcher / Starter | neutral | predicted_SO 2 |
| WAS | Abimelec Ortiz | batter / 1B | better | predicted_BB 1.833 |
| WAS | CJ Abrams | batter / SS | worse | predicted_AB -1.59 |
| WAS | José Tena | batter / DH | worse | 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 | 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 | LAD model-prediction batting totals differ from final simulation box score (AB: current=32, sim=29; H: current=8, sim=5; 2B: current=2, sim=0; R: current=5, sim=4; BB: current=4, sim=5; SO: current=8, sim=6). | LAD |
| info | CURRENT_PLAYER_MATCH_BOX | LAD current finalized hitter lines are model predictions and differ from the simulation box score: Tommy Edman: H current=1 box=2, RBI current=1 box=0, SO current=1 box=0; Teoscar Hernández: AB current=4 box=3, 2B current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Mookie Betts: 2B current=1 box=0, HR current=0 box=1, RBI current=1 box=4, SO current=0 box=1; Hunter Feduccia: AB current=3 box=4, H current=1 box=0, SO current=1 box=0; Kyle Tucker: AB current=4 box=3, H current=1 box=0, R current=1 box=0; Freddie Freeman: AB current=4 box=3, HR current=1 box=0, RBI current=1 box=0; Alex Freeland: BB current=0 box=1, SO current=1 box=2; Alex Call: H current=1 box=0, BB current=1 box=0 | LAD |
| info | CURRENT_FINALIZED_MATCH_BOX | WAS model pitcher projections differ from final simulation pitching box score (H: current=4, sim=5). | WAS |
| info | CURRENT_FINALIZED_MATCH_BOX | WAS model-prediction batting totals differ from final simulation box score (AB: current=34, sim=31; H: current=7, sim=4; HR: current=1, sim=0; RBI: current=4, sim=3; R: current=4, sim=3; 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: CJ Abrams: AB current=5 box=3, RBI current=1 box=0, SO current=1 box=0; James Wood: AB current=5 box=4, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Jorbit Vivas: AB current=3 box=4, H current=1 box=0, BB current=1 box=0, SO current=1 box=3; Abimelec Ortiz: AB current=3 box=2, H current=0 box=1, 2B current=0 box=1, RBI current=0 box=2; Daylen Lile: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=1 box=3; Dylan Crews: AB current=4 box=3, H current=1 box=0, R current=1 box=0; Brady House: AB current=4 box=3, R current=0 box=1, BB current=0 box=1; José Tena: AB current=3 box=4, H current=0 box=1 | WAS |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
Each candidate fix, and exactly which games it would help versus hurt. A lever that repairs one game and breaks two is visible here before it is proposed.
Compared against packet 20260904. Last recorded change: v4.25.0 (20260906) Player deviations are separated into real projection error and variance using each hitter's own season contact quality, so the loop stops learning from lucky days.
| Metric | Prior | Current | Δ | Result |
|---|---|---|---|---|
| brier_score | 0.2474 | 0.2459 | -0.001537 | improved |
| accuracy | 0.5833 | 0.5833 | +0 | flat |
| team_run_mae | 2.6792 | 2.5917 | -0.0875 | improved |
| total_run_mae | 3.7083 | 3.6167 | -0.0916 | improved |
| calibration_error | 0.0846 | 0.0868 | +0.0022 | regressed |
| starter_er_mae | 1.9386 | 1.9426 | +0.004 | regressed |
| starter_outs_mae | 2.8114 | 2.8811 | +0.0697 | regressed |